使用scrapy爬取京东时,无法抓取下一页的数据。

使用scrapy.Request中的self.parse始终无法获取下一页的数据,最开始代码:
name = ‘jd’
allowed_domains = [‘jindong.com’] # very importtant

yield scrapy.Request(
next_url,
callback = self.parse,# 这个地方问题很大,暂时不清楚具体原因
)

后来反复查询(主要是在scrapy下不好单步调试,很难定位到具体原因),才发现时allowed_domains的原因,应该改为:
name = ‘jd’
allowed_domains = [‘jd.com’] # very importtant
切记:京东的域名是jd.com而不是jindong.com.
设置allowed_domains的含义是过滤爬取的域名,在插件OffsiteMiddleware启用的情况下(默认是启用的),不在此允许范围内的域名就会被过滤,而不会进行爬取。对于start_urls里的起始爬取页面,它是不会过滤的,它的作用是过滤首页之后的页面!

备注:本人从零开始学习python开发有半年了,从今天开始把自己的一些总结和经验分享到CSDN中,有问题多多交流,大家一起学习成长。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值