黑白风格网站,房地产网站建设方案书,呼和浩特城乡建设网站,看广告得收益的appPython Scrapy如何实现多页数据爬取#xff1f;
发布时间#xff1a;2020-06-23 11:47:46
来源#xff1a;亿速云
阅读#xff1a;112
作者#xff1a;清晨
这篇文章将为大家详细讲解有关Python Scrapy如何实现多页数据爬取#xff1f;#xff0c;小编觉得挺实用的…Python Scrapy如何实现多页数据爬取
发布时间2020-06-23 11:47:46
来源亿速云
阅读112
作者清晨
这篇文章将为大家详细讲解有关Python Scrapy如何实现多页数据爬取小编觉得挺实用的因此分享给大家做个参考希望大家阅读完这篇文章后可以有所收获。
1.先指定通用模板url https://www.qiushibaike.com/text/page/%d/#通用的url模板
pageNum 1
2.对parse方法递归处理
parse第一次调用表示的是用来解析第一页对应页面中的数据
对后面的页码的数据要进行手动发送
if self.pageNum 5:
self.pageNum 1
new_url format(self.url%self.pageNum)
#手动请求(get)的发送
yield scrapy.Request(new_url,callbackself.parse)
完整示例
class QiubaiSpider(scrapy.Spider):
name qiubai
# allowed_domains [www.xxx.com]
start_urls [https://www.qiushibaike.com/text/]
url https://www.qiushibaike.com/text/page/%d/#通用的url模板
pageNum 1
#parse第一次调用表示的是用来解析第一页对应页面中的段子内容和作者
def parse(self, response):
div_list response.xpath(//*[idcontent-left]/div)
all_data []
for div in div_list:
author div.xpath(./div[1]/a[2]/h3/text()).extract_first()
content div.xpath(./a[1]/div/span//text()).extract()
content .join(content)
# 将解析的数据存储到item对象
item QiubaiproItem()
item[author] author
item[content] content
# 将item提交给管道
yield item # item一定是提交给了优先级最高的管道类
if self.pageNum 5:
self.pageNum 1
new_url format(self.url%self.pageNum)
#手动请求(get)的发送
yield scrapy.Request(new_url,callbackself.parse)
关于Python Scrapy如何实现多页数据爬取就分享到这里了希望以上内容可以对大家有一定的帮助可以学到更多知识。如果觉得文章不错可以把它分享出去让更多的人看到。
相关文章: