目标,实习僧网站搜索“产品运营”下所有职位信息,采集信息在二级页面。
一级页面
抓取信息:
按常规方法抓取,构造url,一共78页。
https://www.shixiseng.com/interns?k=%E4%BA%A7%E5%93%81%E8%BF%90%E8%90%A5&p=1
https://www.shixiseng.com/interns?k=%E4%BA%A7%E5%93%81%E8%BF%90%E8%90%A5&p=2
https://www.shixiseng.com/interns?k=%E4%BA%A7%E5%93%81%E8%BF%90%E8%90%A5&p=3
https://www.shixiseng.com/interns?k=%E4%BA%A7%E5%93%81%E8%BF%90%E8%90%A5&p=4
...
...
https://www.shixiseng.com/interns?k=%E4%BA%A7%E5%93%81%E8%BF%90%E8%90%A5&p=78
静态页面,抓每页职位信息组成每条职位URL。
示例:“https://www.shixiseng.com”+“/intern/inn_ediaz4ur6zsn”
二级页面
静态页面,通过xpath、css、正则都可以。如果是AJAX则发请求获取即可。
一切都这么顺利......吗
详情页源码:
发现这个页面上工资信息,工作天数,实习时长...即所有的数字信息都变成了以&#x开头的东西,这是乱码吗?是加密了吗?
不是!它们类似乱码,却不是乱码。把它保存成html文件,浏览器是可以正常显示的~ 是一组的一串字符是 HTML、XML 等 SGML 类语言的转义序列(escape sequence)
不过多解释,详情看
所以用常规的方法是抓不到这些信息的,这也是实习僧网站的一种信息保护机制。
单丝!!!,我这么聪明又机智,模拟出了0-9的对应&#x存入字典。
d['e012'] = 0
d['e791'] = 1
...
...
d['f8a3'] = 9
有了上述神器,就可以愉快的采集信息了。
采集效果展示:
好好分析网页,是可以很轻松获取信息的,总之思路很重要!