当前位置:   article > 正文

scrapy获取分页的链接数量不完整_scrapy为啥爬不全页面

scrapy为啥爬不全页面
  • 背景:scrapy抓取翻页链接的时候。如果有20页,则需要自动获取每一页的网址,然后回调给解析函数去处理

  • 情况:只获取到第二页的url,后面所有的网页链接都没输出,且写入数据库或者保存文件,只有第一页的数据

  • 概述:要知道xpath用extract抓取的网页链接是列表格式,比如['http://www.baidu.com/'],这个时候,你直接回调 ,并且打印下一页的网址,就会发现只有一个。且数据只有第一页的。

如果用extract_first提取的,则是字符串。如果url不完整则可以直接拼接,无需再进行转换了。

  • 解决方案:直接在抓取到的网页链接后加入[0],提取出来列表里面的网页url。

  • 下面是具体获取下一页url的代码例子:

  1. next_page=response.xpath(".//section[@class='pagination-wrap']/div/a[2]/@href").extract()
  2. if next_page:
  3. print(next_page[0])
  4. yield scrapy.Request(next_page[0], callback=self.parse)
  5. else:
  6. pass
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/887451
推荐阅读
相关标签
  

闽ICP备14008679号