用Scrapy爬取汽车之家的网站图片就是爽腾讯云开发者社区

创建scrapy项目的命令在此不在赘述了,如果不清楚的小伙伴可以看下:Scrapy框架快速入门,以糗事百科为例进行说明【python爬虫入门进阶】(16)通过如下命令创建了一个名为bba_img_demo的scrapy项目,并创建一个名为bba3的spider。

scrapystartprojectbba_img_democdbba_img_demoscrapygenspiderbba3"car.autohome.com.cn"爬取图片bba3Spider这里还是采用xpath来爬取页面元素。在bba3Spider中爬取页面元素得到imgDemoItem,并返回给Pipelines。

在bbaImgDemoPipeline中通过接收bba3Spider返回的imgDemoItem。并将图片保存到bba_img_demo项目的images目录下。并且在images目录下以类别来保存各个类别下的图片数据。

这个方法可以实现我们想要的效果。但是,还不够优雅,没有用到多线程,不够简洁。scrapy为下载item包含的文件(比如在爬取到产品时,同时也想保存对应的图片)提供了一个可重用的itempipelines。这些pipeline有共同的方法和结构(我们称之为mediapipelines)。一般来说你会使用FilesPipeline或者ImagesPipeline

当使用ImagePipeline下载文件的时候,按照以下步骤来完成:

下面我们就使用ImagePipeline来实现下这个功能,详细的步骤如下:

classbbaImgDemoItem(scrapy.Item):category=scrapy.Field()image_urls=scrapy.Field()images=scrapy.Field()在bbaImgDemoItem类中定义image_urls和images两个属性。

pipinstallPillow经过上面五步之后就可以正确的运行了。运行之后的结果是:

可以看出所有的图片都被保存到了images目录下的full文件夹下了。这显然也不是我们期望的结果。所以我们还是需要继承ImagesPipeline类,然后,重写其保存逻辑。查看ImagesPipeline源代码可以得知将图片保存到full文件夹的方法是file_path。所以我们只需要重写这个方法返回我们想要的路径即可。

在pipelines.py文件中自定义一个名为bbaImagesPipeline的类,让该类继承自ImagesPipeline。

defget_media_requests(self,item,info):urls=ItemAdapter(item).get(self.images_urls_field,[])return[Request(u)foruinurls]重写后的get_media_requests方法。首先调用父类的image_urls方法,然后将item设置到request_obj中。

defget_media_requests(self,item,info):request_objs=super(bbaImagesPipeline,self).get_media_requests(item,info)forrequest_objinrequest_objs:request_obj.item=itemreturnrequest_objs2.重写file_path方法父类的file_path方法主要就两步,第一步是将图片链接的地址做hash运算得到图片的名称,接着返回图片存储的相对路径full/{image_guid}.jpg。

这里自定义了一个名为bba3Spider类,该类继承自CrawlSpider。

THE END
1.汽车之家2024汽车报价大全新能源汽车汽车之家,提供包括新能源汽车、电动车在内的所有汽车品牌的2024汽车报价大全,来汽车之家官网查看汽车标志图片大全、四轮电动车报价、电动汽车十大名牌排名及价格等信息,汽车之家是全国最大的中文买车网。https://car.autohome.com.cn/
2.房车猫房车价格房车之家房车猫我的房车之家,房车价格,国产房车,房车图片,房车大全。看房车,买房车,玩房车,用房车猫APP。专业的房车门户网站。https://www.rv28.com/
3.卡车图片大全卡车图片库卡车图片大全,卡车之家共收录1823733张卡车图片,分类详细的卡车图片大全,用户可按车型,地盘,上装,驾驶室部位查看,精彩卡车图片尽在卡车之家。https://product.360che.com/pic/
4.汽车之家城市越野车大全图片及报价车友交流懂车帝提供汽车之家城市越野车大全图片及报价的车友交流详细内容,懂车帝是一个汽车资讯平台,懂车更懂你。我们提供最新汽车报价,汽车图片,汽车价格大全,行情、评测、导购等内容,看车选车买车就上懂车帝。https://www.dongchedi.com/tag/ugc/10439139
5.看车用什么APP汽车大全,看车软件APP哪个最靠谱1、汽车之家 汽车之家是一个专业性非常强的看车APP,平台内拥有十分齐全的车型信息库,相关的车辆参数、图片、实测数据等信息,都十分具有专业性、真实性和参考意义。 同时,汽车之家的车主口碑也是平台的一大特色,大部分车主都会从空间、能耗、配置、舒适性、驾驶感受等多方面给出自己最真实的评价,可以为正在考虑买车https://www.yoojia.com/ask/15-12129938512548235829.html
6.利用Scrapy框架爬取汽车之家图片(详细)爬虫爬取汽车之家车型参数利用Scrapy框架爬取汽车之家图片(详细) 爬取结果 爬取步骤 创建爬虫文件 进入cmd命令模式下,进入想要存取爬虫代码的文件,我这里是进入e盘下的E:\pystudy\scraping文件夹内 C:\Users\wei>E: E:\>cd E:\pystudy\scraping E:\pystudy\scraping>scrapy startproject Bmw5https://blog.csdn.net/sereasuesue/article/details/115303365
7.案例拆解汽车之家的用户运营体系拆解一二城市消费能力高、汽车消费兴趣浓。汽车之家用户主要集中的地方,广东,浙江,江苏等东部沿海地区渗透率较高。 2、产品的核心价值 汽车之家为汽车消费者提供选车、买车、用车、换车等所有环节的全面、准确、快捷的一站式服务。 3、用户需求 买车、卖车、换车。 https://www.niaogebiji.com/article-132747-1.html
8.加速未来!汽车之家App应用性能优化总结与后续展望持续优化平台架构,制定系统化的优化改进方案,以达到汽车之家App闪退率<=0.08%,App页面秒开率>=98%,App启动2s达标率>=98%,H5 1.5s打开率>=70%,主件卡顿率<=1%,严重卡顿率<=0.01%的目标。具体措施如下: 闪退问题:深入系统源码解决系统闪退问题,制定系统性内存优化方案,解决内存OOM崩溃,Native底层崩溃攻克, 并https://www.51cto.com/article/761107.html
9.缺芯就“减配”感应尾门功能?沃尔沃XC60频遭投诉不过,记者注意到,对于感应尾门,沃尔沃XC60官网配置表中并未明确标注,汽车之家等三方网站也显示非标配,电动尾门则是除了最低配的B4智行豪华版没有配置外,其他版本均是标配。 图片来自汽车之家 这也成为了很多经销商在面对车主投诉“减配”时的一种说辞:“配置表里没有,有的是占了便宜,没有也就认了吧。” https://www.yicai.com/news/101313395.html
10.平行进口车专业平行进口车网站,为您详解平行进口车和4s店区别,平行进口车有什么弊端,天津平行进口车新骗局等,买平行进口车,就来汽车江湖自贸区平行进口车官方旗舰店http://www.qc188.com/
11.新华网国道之行 海阔天空丨化瓷为字 艺术家探索陶瓷艺术新形态 巴黎圣母院重新开放 2024企业家博鳌论坛12月2日至4日在海南博鳌举办 中国智能车未来挑战赛:汽车智能加速“进化” 2024亚马逊云科技 re:lnvent《拉斯维加斯有约》直击现场 金融 交通银行密切四级联动 全力推进支持小微企业融资http://www.xinhuanet.com/