微信公众号:DeepThinkerr
B站:DeepThinkerr
在微信公众号回复 “51job数据爬取” 获取Python代码源文件和数据结果
(本博客在《利用 Python 爬取了 13966 条运维招聘信息,我得出了哪些结论》启发下创作,目前只爬取了数据,没有进行数据清洗。
一、URL分析
这URL看上去是不是吓死人,其中这里边大部分都是废话真正有用的部分很短,先上第一页和第二页的URL,对比分析。
了解URL的可以知道,第一页和第二页的URL的页面参数参数分别为1和2,在看整个URL过程中,注意出现1和2的位置。一边URL的页面参数会在后边列出关键词(例如:p=1 or page=1),但是这个URL比特殊,页面参数在前边,如下图所示。
可以看到,两个URL在红色方框里边分别对应1和2,可能是页面参数。对不对试试就知道了,将参数改为3,再输入浏览器。
这个时候就到了第三页,这个时候就找到了URL的页面参数,但是这个URL看上去太长了,尝试将html?后边去掉,在看浏览器页面。惊奇的发现两者是一样的,这样将后边的吊车尾去掉,看上去就舒服多了,最后在Python中URL为:
“ https://search.51job.com/list/000000,000000,7300,00,9,99,%2B,2,” + 页面 + “.html?”
二、HTML界面分析
页面分析完了,就需要分析页面的HTML代码了,首先利用Ctrl+F找到需要爬取的信息位置(例如 搜索“ 长沙海贝智能科技有限公司”)。这样就找到需要解析的页面位置,如下图。
观察两个工作的结构,可以发现每一个工作的信息都放在 “
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/55d78ff6a5c078a2b559f76b4d014330.png)
三、爬虫代码
3.1 使用Python库
Name | Version |
---|---|
requests | 2.24.0 |
beautifulsoup4 | 4.9.1 |
pandas | 1.0.5 |
lxml | 4.5.2 |