Djange构建招聘信息爬虫系统!太强了吧!

Djange搭建爬虫系统

Django是一个开放源代码的 Web 应用框架,由 Python 写成。许多成功的项目都使用了这个框架,采用了 MVT 的软件设计模式,即模型(Model),视图(View)和模板(Template)。使用这个框架能够高效快捷的开发出这个系统。

 

前言

我们将在下面与大家分享如何搭建起一个django项目,以及编写招聘网站爬虫系统以及爬虫数据分析功能和下载数据。


一、如何安装django?

第一种方式:通过pip安装

$ python -m pip install Django
1

第二种方式:

yum install python-setuptools
easy_install django
12

检验是否安装成功

[root@solar django]# python
Python 3.7.4 (default, May 15 2014, 14:49:08)
[GCC 4.8.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> django.VERSION
(3, 0, 6, 'final', 0)
1234567

安装完毕!

二、建构项目

1.创建项目

$ django-admin startproject mysite
1

如果django-admin不起作用,可以参阅:https://docs.djangoproject.com/en/3.1/faq/troubleshooting/#troubleshooting-django-admin

项目如下(示例):

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py

123456789

2.创建爬虫应用程序

现在,您的环境(一个“项目”)已设置好,您就可以开始工作了。

您在Django中编写的每个应用程序都包含一个遵循特定约定的Python包。Django附带了一个实用程序,该实用程序会自动生成应用程序的基本目录结构,因此您可以专注于编写代码,而不是创建目录。

$ python manage.py startapp polls
1

代码如下(示例):

polls/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py
123456789

到这一步我们的目录的就已经创建完毕了。

进入到mysite目录:
我们尝试运行一下:python manage.py runserver 0.0.0.0:8000

效果如下:

看见有这个页面,安装大功告成

补充:
把数据库改成mysql数据库。
修改setting文件即可:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        'NAME': 'movie',
        'HOST': '127.0.0.1',
        'PORT': 3306,
        'USER': 'root',
        'PASSWORD': 'root',
    }
}
1234567891011

运行命令:
python manage.py migrate

这个时候就可以自动生成项目所需要的mysql数据表和数据字段。

3.安装自带的后台管理系统

在mysite里面的url文件改成以下。

创建超级管理员命令

$ python manage.py createsuperuser
1

创建超级密码

Username: admin
1

最后一步是输入密码。你会被要求输入两次密码,第二次的目的是为了确认第一次输入的确实是你想要的密码。

Password: **********
Password (again): *********
Superuser created successfully.
123

启动:
进入到mysite目录,运行

$ python manage.py runserver
1

4、打开浏览器,转到你本地域名的 “/admin/” 目录, – 比如 “http://127.0.0.1:8000/admin/” 。你应该会看见管理员登录界面:


我们安装一下:

pip install django-simpleui
1


完成搭建工作,刷新一下页面,一个全新的后台系统就呈现在我们的面前了,如下图所示:

至此,项目骨架就已经搭建完成。

4.搭建自定义的应用模块

1、运行命令:

   python manage.py startapp polls
1

这个时候你就可以看见poll模块已经在我们的目录里面生成的了。

2、建立相关的表模型:

model.py

from django.db import models

# Create your models here.
# models.py
from django.db import models


class Test(models.Model):
    name = models.CharField(max_length=20)


class Category(models.Model):
    # id = models.CharField(u'实例ID', max_length=32, blank=False, primary_key=True)
    name = models.CharField(u'岗位', max_length=50)
    add_time= models.CharField(u'添加时间', max_length=50)
    class Meta:
        verbose_name = '职位分类'
        verbose_name_plural = verbose_name
    def __str__(self):
        return self.name

class Record(models.Model):
    # id = models.CharField(u'实例ID', max_length=32, blank=False, primary_key=True)
    record_name=models.CharField(u'记录名称', max_length=50)
    date=models.CharField(u'记录日期', max_length=50)
    recruit_type=models.CharField(u'记录类型', max_length=50)
    class Meta:
        verbose_name = '爬取记录'
        verbose_name_plural = verbose_name
    def __str__(self):
        return self.date

class Liepin(models.Model):
    # id = models.CharField(u'实例ID', max_length=32, blank=False, primary_key=True)
    work=models.CharField(u'岗位',max_length=50)
    edu=models.CharField(u'教育背景',max_length=50)
    district=models.CharField(u'地区',max_length=50)
    compensation=models.CharField(u'薪酬',max_length=50)
    company=models.CharField(u'公司',max_length=50)
    year = models.CharField(u'工作年限', max_length=50)
    create_time = models.CharField(u'创建时间', max_length=50)
    work_type = models.ForeignKey(Category, on_delete=models.CASCADE,verbose_name='分类')
    record = models.ForeignKey(Record, on_delete=models.CASCADE, verbose_name='记录')
    salary = models.CharField(u'收入后一位', max_length=10)

    class Meta:
        verbose_name = '猎聘数据'
        verbose_name_plural = verbose_name

class Qiancheng(models.Model):
    # id = models.CharField(u'实例ID', max_length=32, blank=False, primary_key=True)
    work = models.CharField(u'岗位', max_length=50)
    edu = models.CharField(u'教育背景', max_length=50)
    district = models.CharField(u'地区', max_length=50)
    compensation = models.CharField(u'薪酬', max_length=50)
    company = models.CharField(u'公司', max_length=50)
    year = models.CharField(u'工作年限', max_length=50)
    create_time = models.CharFiel
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值