查看原文
其他

40 行代码拿下拉勾网招聘数据

2017-05-01 南寻 开源中国

# 点击图片报名上海、南京源创会 #

摘要: 最近在学MapReduce,出于练手的想法,把拉钩网上的招聘信息拿下做一次分析。

环境:

ubuntu : 16.04

python : 3.5.2

scrapy : 1.3.3

编辑器 : vim

分析拉勾网(http://www.lagou.com):

可以看到在左侧有着各行各业的招聘信息,今天就把各行各业的招聘都给拿下来。

创建一个scrapy爬虫项目:

使用基本(basic)模板创建一个蜘蛛(spider):

整个项目目录结构如下:

配置settings.py文件:

设置请求头(可以根据自己需要设置):

配置ITEM_PIPELINES优先级:

'''爬太快对人家网站不太好'''',所以设置我设置0.5一次:

最后配置图如下

编写items.py文件(item文件定义抓取数据格式):

因为这里只需要职位的序号,薪水,公司名称,职位名称,公司位置。所以items编写如下

用firefox里面的Firebug工具分析主页(http://www.lagou.com)左侧的的方向网址:编写代码获取各个方向的网址

因为存在一些url是"javascript:;"

所以用下面的if进行判断:

获取各方向网址:

对每一个方向的页面进行抓取:

例如:

针对这种页面编写代码如下:

将存储数据到文件中(pipelines.py是存储数据的一个模块,你可以设置将数据存储到数据库,也可以存储到文件中):

至此爬虫代码完成

接着运行爬虫:

结果:

这里我抓了大概三万条信息,欢迎大牛前来指教。。。

项目地址:https://git.oschina.net/nanxun/lagou.git




推荐阅读

关于 Java 你不知道的 10 件事

MySQL 8.0 新增复制功能;TensorFlow 1.1.0 添加部分语言的安装指南 | 软件周刊

PHPer 进击学习之路:各种实用的 PHP 开源库推荐(二)

解 Bug 之路 —— 串包 Bug

只会增删查改?你还缺个数据库管理工具!

点击“阅读原文”查看更多精彩内容

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存