Copy from Boss_zhipin_spider
🔎 Boss 直聘 Python 招聘岗位信息爬取和分析🔎
爬取了BOSS直聘上 Python 关键字全国范围内的招聘岗位
部分城市无数据不列入统计,故地区范围为**101个城市,总共3112条数据,结构如下:
字段浅显易懂,其中需要说明的是pid为每个待招岗位的唯一id,在访问页面详情时会用到
注意爬取不要太快,否则403警告😏
boss招聘.ipynb -> 生成分析图表
mongo_connect.py -> 数据清洗,存入mongodb
pipelines.py -> 数据过滤的管道
spider -> 爬虫
wordcloud -> 生成词云
settings.py -> scrapy配置文件
middlewares.py -> scrapy中间组件
pip install -r requirements.txt
scrapy crawl zhipin -o jobs_python.json
使用 Jupyter Notebook 配合 echarts进行绘图(绘图部分由我可爱的girl编写,真的很棒),部分示例图如下所示🔍
如果能帮上你的话,献上一个小小的 Star 👍吧
- 智能识别302跳转的验证码,并进行输入
- 多线程爬虫
Logging Scrapy提供了log功能,可以通过 logging 模块使用
可以修改配置文件settings.py,任意位置添加下面两行
LOG_FILE = "mySpider.log" LOG_LEVEL = "INFO" Scrapy提供5层logging级别:
CRITICAL - 严重错误(critical) ERROR - 一般错误(regular errors) WARNING - 警告信息(warning messages) INFO - 一般信息(informational messages) DEBUG - 调试信息(debugging messages) logging设置 通过在setting.py中进行以下设置可以被用来配置logging:
LOG_ENABLED 默认: True,启用logging LOG_ENCODING 默认: 'utf-8',logging使用的编码 LOG_FILE 默认: None,在当前目录里创建logging输出文件的文件名 LOG_LEVEL 默认: 'DEBUG',log的最低级别 LOG_STDOUT 默认: False 如果为 True,进程所有的标准输出(及错误)将会被重定向到log中。例如,执行 print "hello" ,其将会在Scrapy log中显示