Scrapy框架中的Spider.Resquest 和 Response.follow 的区别

Scrapy框架中的Spider.Resquest 和 Response.follow 的区别

来点废话
最近学习scrapy框架,感受到了scrapy的强大,可能自己还没有学透,感觉有时候数据保存没有那么方便,等技术成熟也许会使用更加灵活,废话不多说,进入今天的主题。

首先,为什么要使用Resquest和Response.follow
按照我的理解,使用scrapy框架和之前脚本爬虫最大的区别是,scrapy框架中你只需要写出爬虫的几个部分任务,整体的爬虫引擎已经实现,并且scrapy实现的异步爬虫,速度极快,而自己写脚本爬虫则需要写出全部过程。
更形象一点说,scrapy就像是一个专业的爬虫管家,你把你需要做的任务交给他,他会即快又好的完成。
我相信了解过的人都知道Spider.Resquest的作用,Response.follow也有同样的功能,不过多了一些小区别。

一、Response.follow可以使用相对地址
这是第一点不同,Resquest需要你提供完整的url才可以进行请求。

二、Response.follow可以使用选择器

'for href in response.css('li.next a::attr(href)'):
    yield response.follow(href, callback=self.parse)'

如果你不想使用url,可以使用css选择器,不过必须要使用其中包含url参数的选择器

三、Response.follow可以使用标签

for a in response.css('li.next a'):
    yield response.follow(a, callback=self.parse)

如果你连带url参数选择器都不想使用,可以直接使用带url的标签传递,response.follow会自动使用其中的url

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值