专栏名称: OSC开源社区
OSChina 开源中国 官方微信账号
目录
相关文章推荐
OSC开源社区  ·  四名CEO ,扬言要打造新一代基础软件技术栈 ·  4 天前  
程序员的那些事  ·  趣图:Rust 练手小项目 ·  1 周前  
程序员小灰  ·  小米薪资开了,性价比之神! ·  6 天前  
51好读  ›  专栏  ›  OSC开源社区

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

OSC开源社区  · 公众号  · 程序员  · 2017-05-01 08:28

正文

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

摘要: 最近在学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

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

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