使用scrapy框架爬取前程无忧

本文介绍了使用Python的Scrapy框架爬取前程无忧网站上的大数据相关岗位信息,如职位名称、薪资、公司、地点等,并将数据存储到MongoDB,进行数据清洗和分析,最后实现数据可视化,包括平均工资、岗位数量的条形图和技能词云图。
摘要由CSDN通过智能技术生成

注:后续博客地址:https://blog.csdn.net/ITwangxiaoxu/article/details/107220339

项目要求

利用python编写爬虫程序,从招聘网上爬取数据,将数据存入到MongoDB中,将存入的数据作一定的数据清洗后分析数据,最后做数据可视化。

工具软件

python 3.7
pycharm 2020.1.2

具体知识点

python基础知识
scrapy框架知识点
pyecharts 1.5
MongoDB

爬取字段
职位名称、薪资水平、招聘单位、工作地点、工作经验、学历要求、工作内容(岗位职责)、任职要求(技能要求)

数据存储
将爬取到的数据保存在MongoDB中

数据分析与可视化

具体要求
(1) 分析“数据分析”、“大数据开发工程师”、“数据采集”等岗位的平均工资、最高工资、最低工资,并作条形图将结果展示出来。
(2)分析“数据分析”、“大数据开发工程师”、“数据采集”等大数据相关岗位在成都、北京、上海、广州、深圳的岗位数,并做条形图将结果展示出来。

(3)分析大数据相关岗位1-3年工作经验的薪资水平(平均工资、最高工资、最低工资),并做出条形图展示出来;
(4)将数据采集岗位要求的技能做出词云图

具体步骤

1.分析网页
点击进入网页:https://search.51job.com/list/000000,000000,7500,00,9,99,%2520,2,1.html?lang=c&stype=&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=99&companysize=99&providesalary=99&lonlat=0%2C0&radius=-1&ord_field=0&confirmdate=9&fromType=&dibiaoid=0&address=&line=&specialarea=00&from=&welfare=
我们先来看看网页构造。再来分析思路:
由于我们需要的数据岗位的分布数据,所以我们就直接搜索条件,分析数据岗位在全国的一个分布情况。
在这里插入图片描述
由于我需要爬取的字段在招聘列表上面不完整,就需要进入详情里面去分析我们的字段。先来看看进去后是什么样子。
在这里插入图片描述
我们需要的字段都在这里面了,所以,就可以开始研究网页结构布局
在这里插入图片描述

首先我需要抓取全部列表信息岗位的网址,并要进入到每一个网址去,那么就必然需要每一个进去的入口,而这个入口就是这个这个职位名称所包含的网址:
在这里插入图片描述

新建一个爬虫项目:

scrapy startproject qiancheng

然后打开我们的项目,进入瞅瞅会发现啥都没有,我们再cd到我们的项目里面去开始一个爬虫项目
cd qiancheng
scrapy genspider qc https://search.51job.com/
这后边的网址就是你要爬取的网址。

先设置一下我们的配置文件settings.py中写上我们的配置信息:

关闭网页机器人协议

ROBOTSTXT_OBEY = False

请求头信息

DEFAULT_REQUEST_HEADERS = {
  'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
  'Accept-Language': 'en',
'User_Agent' :'Mozilla/5.0 (Windows NT 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值