拉勾网 python 相关职位爬取以及分析展示,希望各位批评指正

2016-07-07 22:31:28 +08:00
 namco1992

个人练手的小项目,主要逻辑如下: 利用 scrapy 框架对拉勾网上的职位进行抓取,数据存储至 mongodb 中,后续进行进一步分析导出 json 格式数据,利用 fabric + 定时任务上传更新数据至服务器,完成自动部署。目前仅做了对 python 相关职位的抓取。

至于抓取回来的数据,其实并没有做什么分析,只是归类展示。对于关键词的整理,算是用了比较 trick 的方法,通过正则匹配出所有英文单词,排除掉某些不需要的词组,然后进行词频的排序,得出了一个高频关键词的结果。但是这个不算是方法的方法,势必会遗漏掉某些可能是通过中文描述的关键词组,所以还望有经验的前辈指教。

数据展示网站示例:http://107.170.207.236/job_analysis/(就是台 DO 的 5 刀服务器,各位高抬贵手)

数据展示项目地址:https://github.com/namco1992/job_analysis

爬虫项目地址:https://github.com/namco1992/lagou_crawler

本人前端苦手,现在只是做了一个非常简陋的展示,没有做更进一步的分析。也希望感兴趣的朋友能提些不同维度分析的建议,当然也非常欢迎直接提 issue 或者 Pull Request 。

我个人想到的还有通过地域维度分析薪酬情况,或者增加更多类别的工作岗位抓取。也希望大家有其他想法的话能够不吝赐教。

最后,如果能给个 star ,那就是对我莫大的支持了。再次感谢!

6268 次点击
所在节点    Python
28 条回复
namco1992
2016-07-08 08:51:45 +08:00
有人能给点反馈么~[认真脸]
Allianzcortex
2016-07-08 08:54:12 +08:00
为什么都喜欢用 scrapy …… 果然我还要再学一遍……

我当时专门在虚拟机里装了 Fiddler 来分析拉钩,其实网页链接是挺奇葩的,比如正常的职位显示是在网页上就能得到,但有些需要专门 Post 个请求来得到 JSON 数据。

关于词频显示,我用的是 jieba ,但效果不好,用正则来匹配就很棒啊。已 star

我是一直没有在数据库里进行存储,这点要向楼主学习

==啊,我把我当时写的也放到 github 上,就是里面的一个 res.json 数据
Allianzcortex
2016-07-08 09:09:15 +08:00
namco1992
2016-07-08 09:16:36 +08:00
@Allianzcortex

词频的话,我当时就想应该绝大多数技术要求的关键词都是英文单词,所以索性就用正则匹配出来了,就是有个问题,英文描述的工作职位就没有办法抓取到对应的关键词。

然后存在 mongodb 里面主要是为了分析方便,工作职位信息相对来说时效性没有那么强,在一段时间内都有分析价值。

我看了你的 repo ,感觉你的点子更棒啊~
Allianzcortex
2016-07-08 09:19:48 +08:00
@namco1992 不是谦虚,真的写的渣,刚刚才 Push 上去的代码。怎么说,看到拉钩上的职位都是 qianduankaifa,houduankaifa 这种后缀,真是觉得……擦擦擦
wujunze
2016-07-08 09:25:42 +08:00
不错 已经 star 最近也在玩儿爬虫 学习了
namco1992
2016-07-08 09:44:56 +08:00
@Allianzcortex 我都是遍历的...第一次统计都需要爬两百万个页面...
xiaoyu9527
2016-07-08 11:33:22 +08:00
@namco1992 拉手并没有封 IP 的问题么?
namco1992
2016-07-08 11:46:28 +08:00
据我所知没有封 IP ,也不知道拉勾的人上不上 V 站,不过还是低调点好
practicer
2016-07-08 11:49:06 +08:00
拉钩的请求速度怎么样?楼主有统计爬虫的速度嘛?
namco1992
2016-07-08 13:42:55 +08:00
还 ok ,我就是在自己普通 PC 上跑的,大概每分钟 300 个页面。 python 相关职位接近 4000 个,爬起来还是比较快的。
zoudeze
2016-07-08 13:53:36 +08:00
突然间感觉 do 访问好快啊
GreatMartial
2016-07-08 14:00:05 +08:00
支持一个
jzp113
2016-07-08 14:28:07 +08:00
看到了保健按摩。
namco1992
2016-07-08 14:31:03 +08:00
@jzp113 哈哈哈,被发现了。之前做的 side project ,不过反正是做给国外用户的,不算犯法吧[doge]
namco1992
2016-07-08 14:31:51 +08:00
@zoudeze 旧金山的线路,偶尔还是会抽风访问不了
slysly759
2016-07-08 17:22:58 +08:00
都是 json 格式的 我原来也写过一个 当时就爬了一万条的样子 也是放在 mongodb 用别人的 BI 做的可视化 没什么难度
pepesii
2016-07-08 17:39:57 +08:00
额,我也做了一个!比你的那个丑!还是我的毕业设计!
jzp113
2016-07-08 17:52:12 +08:00
@namco1992 不错,中国的有吗?
namco1992
2016-07-08 20:50:12 +08:00
@jzp113 哈哈,别想了兄弟,没有中国的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/290997

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX