分享好友 最新动态首页 最新动态分类 切换频道
【Python-爬虫】使用scrapy框架实现租房数据爬取
2024-12-29 12:00

目录

一.创建

二.写代码

1.将roboots协议一脚踹飞

2.在创建的爬虫文件中写爬虫的代码

 3.代码

4.翻页


在文章里展示全部的代码的话会非常影响文章的观看,有想要查看全部代码的朋友请到GitHub:https://github.com/aqaswrae/Some-small-crawler-projects

这个就是 

首先要创建scrapy项目和爬虫文件,若有疑问,请看scrapy框架的基本使用这一篇文章

链接:Python爬虫-Scrapy框架的基本使用_瓦瓦卡卡的博客-CSDN博客

也是我写的🤭🤭

写代码的第一步:就是先更改roboots协议

找到settings.py文件,将20行的roboots协议注释掉或者直接将其删除

             

我创建的爬虫文件名为 lianjia.py,所以就要在这个文件中写爬虫代码

         

我这次爬取的是链家上的租房数据。https://qd.lianjia.com/zufang/

首先要想好要爬取哪些数据,并在items.py文件中做好数据建模

              

 

                        

 scrapy框架内置了xpath语法,所以我们使用xpath语法来获取所需的数据

 

                       

 注意:获取数据时,不能单纯的使用xpath语法,要在语句的后边加上extract()才能获取到具体的数据,否则获取到的只是相应内容的对象。

要是觉得写一行获取数据的代码就运行一遍爬虫文件很麻烦的话,建议使用scrapy shell来调试程序,具体操作可以看一下这篇文章的 6.scrapy shell 的使用

Python爬虫-Scrapy框架的基本使用_瓦瓦卡卡的博客-CSDN博客

                        

                     

 然后在爬虫文件中导入items.py文件中的类,用来实例化一个item对象,将获得的数据传给这个对象

                   

                         

给数据时,键名必须和数据建模时设置的字段名相同 ;要使用yield将数据返回,这是框架规定好了的,不能使用return,会中断循环

 

                          

 在pipelines.py文件中接收传送过来的数据,将其转换成字典

如果要使打印或保存数据成功,要先将settings.py文件中的管道打开

                   

 

                      

 这样就可以正常打印和保存数据了。在pipelines.py文件中

                 

                           

 接下来我们将这些数据保存到json文件中

 

 这样我们的租房数据就保存完成了。

如果数据乱码的话,点击一下右上角提示中的’gbk‘,使用gbk编码打开。

当你去找页面最底下的下一页的超链接的时候

                                   

在元素这个页面中会显示,但是我们要以返回的源码中的数据为准,源码中只有这么一行,是下一页这个a标签的父标签。

                         

                             

 思路一

获取父标签div中的data-totalPage(总页数)属性和data-curPage(当前页)属性,然后将url的前一部分https://qd.lianjia.com/zufang/pg与(当前页+1)拼接起来构成下一页完整的url

                        

 
 

                         

 这个方法不能将第二个图片中的代码写在if判断语句中(我用来判断是否已经到了第100页),亲测,只能输出第二页完整的url。

我暂时还不知道原因,等我明白了再来写上。

同一天内,我找到原因了,获取到的total_page 和 current_page都是字符串类型的,进行if判断时要转换为int类型

                               

       

完整的函数内容

 

 

                        

思路二

获取ul标签中的所有链接,然后循环构造请求对象,返回给引擎

                     

       

 

最新文章
如何让百度快速收录网站内容?
还是那句话,只要坚持,总会被青睐的。做搜索引擎推广,不可能做完马上见效的,seo是需要时间的,可能你前几天做的事情,过几天百度才会知道。1、网站内部做好。怎么做好?这个问题问的深奥啊,我怎么知道你的网站有没有做好,你的网站我又
虚拟偶像影视动画制作软件(虚拟偶像影视动画制作软件哪个好)
摘要:虚拟偶像影视动画制作软件,虚拟偶像影视动画制作软件现如今,随着科技的迅猛发展,人们对于数字化、虚拟化、智能化工具的需求日益增加。在影视动画行业,虚拟偶像已经成为了一种趋势,不少影视公司纷纷尝试推出自己的虚拟偶像,同时
漫蛙漫画官网入口最新版软件亮点
漫蛙漫画官网入口最新版下载是一款专为漫画爱好者打造的阅读软件。它汇集了丰富的漫画资源,包括各种题材和风格的作品,满足用户的多样化需求。软件界面简洁友好,操作便捷,支持离线下载,让用户随时随地畅享漫画世界。同时,漫蛙漫画还提
一款具有创新性和趣味性的 AI 换脸应用,可让用户体验到摸胸的感觉
AI 换脸技术是近年来计算机视觉和人工智能领域的热门话题,它可以将一个人的脸替换到另一个人的身上,从而实现换脸的效果。而今天我要向大家介绍的是一款具有创新性和趣味性的 AI 换脸应用,它不仅可以让用户体验到换脸的乐趣,还可以让用
【现身】传苹果将推10.8英寸OLED iPad Air;Vision Pro现身中国监管数据库;美格纳中国区总部开业,专注OLED显示驱动芯片等领域
1.美格纳中国区总部在合肥开业,专注OLED显示驱动芯片等领域2.南京高端软件及信息服务产业融合集群专项资金项目,芯视界、芯行纪等上榜3.苹果Vision Pro设备已现身中国监管数据库4.传苹果将推10.8英寸OLED iPad Air5.日本住友重工将推出SiC
全球十大搜索引擎排名,Google高居榜首
【全球十大搜索引擎排名】Google全球市场份额为68%,高居榜首。雅虎第二,市场份额为7%,百度第三,市场份额为6.5%,微软第四,市场份额为 3%,其它依次为eBay、NHN、Yandex、Facebook、Ask和阿里巴巴。另:中国是全球第二大搜索市场,所占
Python爬虫实战,完整的思路和步骤(附源码)
小的时候心中总有十万个为什么类似的问题,今天带大家爬取一个问答类的网站。 本堂课使用正则表达式对文本类的数据进行提取,正则表达式是数据提取的通用方法。 环境介绍: python 3.6 pycharm requests re json 爬虫的
搭建你的网站:Wordpress网站建设指南 – 外贸网站建设,Wordpress网站建设,外贸建站公司,外贸独立站,Wordpress成品网站
在这个数字化时代,拥有一个具有吸引力和易用性的网站对于个人和企业而言变得越来越重要。而WordPress作为一个流行的网站建设工具,无疑是许多人首选的选择。今天,我们将向您介绍如何搭建属于您自己的网站,让您在网上展示自己的独特风采
【8735(移动版)腾讯手机管家下载】酷派8735 移动版腾讯手机管家16.1.19免费下载
腾讯手机管家专注手机骚扰拦截,动态守护手机安全,深度清理微信、QQ缓存,让手机体积减半,拒绝卡慢。---认真服务---【骚扰拦截】智能拦截骚扰电话,过滤诈骗垃圾短信【清理加速】清理加速能力升级,释放空间告别卡慢【微信清理】个性清理
哪些因素会影响车价计算器的结果?
车价计算器的结果会受到多种因素影响。 贷款金额由车辆价格和首付款比例决定,首付款高贷款金额就低。 贷款利率很关键,不同金融机构和贷款方案利率有差异,利率高还款总额大。 贷款期限也重要,长的每月还款额低但总利息多,短的每月还款
相关文章
推荐文章
发表评论
0评