背景

通过自学python,对requests库、re库以及BeautifulSoup库等爬虫相关知识有了一定程度的了解之后,为了实战测试一下自己的学习成果,同时,也为了满足家人这方面的需求,于是尝试对58同城里的租房数据进行爬取,以此作为第一次爬虫实战。因为是第一次,还存在很多问题,在参考了很多代码和相关资料后,历时两天,终于完成了这一次实战,下面放出代码,希望对大家有所帮助。


代码及结果



总结

难点

对于页码的变换,对我来说是一个比较难的点,在参考了很多同好的代码后,我通过在网址后面加上/pn{}(page number)来解决。

为了避免出现验证码验证的情况,我将每次访问间隔设置为5s以上,这是因为58同城会识别ip地址,如果被锁定,就需要手动打开网页进行验证。

在网页源代码中,58同城对数字进行了加密,这就使得很多数字都是以乱码显示,在此,我借鉴了同好的58同城南京数据爬取,将这个问题解决了。

对于BeautifulSoup库的运用,包括find(),next_sibling,contents等等,都提高了查到有用信息的效率

需要注意的方面

对于python新手来说,最应该注意的地方就是字符的编码了,整个调试过程中,遇到很多次编码上的错误,最后虽然调试通了,但是部分代码比较冗余

代码中最后还涉及到了openpyxl模块,也需要有所了解

异常处理对于数据抓取十分重要,需要理解掌握

代码的整齐美观还需要很大的提升

代码提升潜力

代码的简洁和美化

异常处理感觉可以进行修改

在主函数中,可以直接一次性提取出所有的网址,防止重复


以上就是用爬虫技术抓取58同城租房信息的全过程,希望对大家有所帮助。


更多数据抓取技术分享,请关注火爪数据抓取

点赞(0)
立即
投稿
发表
评论
返回
顶部
{__SCRIPT__}