用python进行多页数据爬取_Python Scrapy如何实现多页数据爬取?

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,callback=self.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('//*[@id="content-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,callback=self.parse)

关于Python Scrapy如何实现多页数据爬取?就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/502357.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

禁用计算机组策略和管理,计算机正在使用时,禁用或关闭组策略刷新 | MOS86

点击此处修复Windows错误并提高系统性能Group Policy(Windows 2000中引入的管理工具)可以确定组织中的用户和计算机的程序&#xff0c;网络资源和操作系统的运行方式。组策略可帮助用户通过在Windows Windows注册表中进行修改来为活动对象添加策略。通常&#xff0c;默认情况下…

怎么捡自己空投_使命召唤手游空投怎么快速找到?使命召唤手游快速找到空投技巧...

使命召唤手游怎么快速寻找空投&#xff1f;空投里面有高级武器跟护甲还有补给品&#xff0c;拿到空投你的装备就会比别人高几个档次。高手拿到空投后吃鸡概率大大提高。下面就为大家详细的介绍一下如何让你快速的找到空投。首先刚开始游戏的时候是不会出现空投的&#xff0c;一…

ubuntu rpm安装_为什么说Ubuntu是一个值得尊敬的Linux发行版

Ubuntu用了好长时间了&#xff0c;最早接触的是RedHat&#xff0c;个人使用体验并不好&#xff0c;当时一直在想&#xff0c;为什么就没有一个更好用的Linux操作系统呢&#xff1f;别万年不变的Windows不行吗&#xff1f;&#xff08;当时作为一个穷学生党&#xff0c;完全不想…

国家计算机科学进展,计算机科学技术学院部署科研工作推进及国家自然科学基金申报工作...

新闻网讯计算机科学技术学院在博知楼510会议室举行科研工作推进会暨2020年国家自然科学基金申报动员会。院党委书记尹增刚、院长李建波及部分青年教师参加会议。副院长于佳主持会议。于佳围绕近年来国家自然科学基金申报、2019年科研工作进展、计算机科学ESI进展等三方面工作进…

linux怎样自动检查link文件_怎样理解和识别 Linux 中的文件类型 | Linux 中国

众所周知&#xff0c;在 Linux 中一切皆为文件&#xff0c;包括硬盘和显卡等。在 Linux 中导航时&#xff0c;大部分的文件都是普通文件和目录文件。但是也有其他的类型&#xff0c;对应于 5 类不同的作用。因此&#xff0c;理解 Linux 中的文件类型在许多方面都是非常重要的。…

计算机主机核心通常包括,计算机一级考试题库选择题

计算机一级考试题库选择题选择题占了计算机等级考试的大部分分数&#xff0c;为此&#xff0c;yjbys小编为大家提供计算机一级考试选择题库如下&#xff0c;希望对大家参加计算机等级考试有帮助!单项选择题1. 微型计算机主机的主要组成部分是A 运算器和控制器B CPU 和内存储器C…

c++ map底层_深入浅出Redisredis底层数据结构(上)

来源:http://t.cn/AigEOwRE相信使用过Redis 的各位同学都很清楚&#xff0c;Redis 是一个基于键值对(key-value)的分布式存储系统&#xff0c;与Memcached类似&#xff0c;却优于Memcached的一个高性能的key-value数据库。在《Redis设计与实现》这样描述&#xff1a;Redis 数据…

绝对布局优势_前瞻布局+尖端科技+雄厚资金 恒大解锁造车的“正确姿势”

新能源汽车行业风起云涌&#xff0c;在造车新势力们交相厮杀之时&#xff0c;恒大闪电般完成“新能源车全产业链布局”&#xff0c;占据了绝对先发优势。先人一步驶入快车道的恒大并未止步于此&#xff0c;5月30日&#xff0c;恒大又宣布拿下英国顶级轮毂电机企业protean&#…

山东省计算机考试无法报名,山东省2017年9月全国计算机等级考试报名事项公告...

根据教育部考试中心《关于做好2017年全国计算机等级考试工作的通知》(教试中心函〔2016〕237号)和《关于做好2017年9月全国计算机等级考试报名工作的通知》(鲁招考[2017]67号)要求&#xff0c;现将2017年9月我省全国计算机等级考试报名有关事项公告如下&#xff1a;一、 考试科…

laravel redis_thinkphp+redis实现秒杀,缓存等功能

秒杀是商城常见功能 phpredis是最常见的秒杀功能1&#xff0c;安装redis&#xff0c;根据自己的php版本安装对应的redis扩展首先查看phpinfo();php环境信息2&#xff0c;下载redishttps://windows.php.net/downloads/pecl/snaps/redis/ https://windows.php.net/downloads/pecl…

ip访问次数统计 nginx_Linux分析Nginx日志统计IP访问次数的shell脚本

平时运维遇到最多的就是nginx的日志分析了&#xff0c;要时常做系统监控&#xff0c;检查IP的访问次数是否有异常&#xff0c;防止恶意访问。假设我的nginx日志如下&#xff1a;.......211.253.43.23 - - [03/Jun/2019:11:41:02 0800] "GET211.253.43.23 - - [03/Jun/2019…

计算机技术在机械设计中的应用,计算机技术在机械设计制造和自动化中的应用(原稿)...

《计算机技术在机械设计制造和自动化中的应用(原稿).doc》由会员分享&#xff0c;可免费在线阅读全文&#xff0c;更多与《计算机技术在机械设计制造和自动化中的应用(原稿)》相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索。1、此外,计算机仿真技术还被广泛的应用…

freemarker ftl模板_效率提升百分之四十,AS模板也太好用了吧

点击蓝字 轻松关注CV 工程师你好&#xff0c;以下内容会让你感觉到不适&#xff0c;慎入&#xff01;在平时的开发工作中&#xff0c;我们经常将一个地方的代码&#xff0c;复制粘贴到另外一个地方&#xff0c;俗称搬砖&#xff0c;搬砖搬多了&#xff0c;作为一个资深的挨踢民…

storyboard搭建项目_swift项目第五天:swift中storyBoard Reference搭建主界面

import UIKit/*总结&#xff1a;1&#xff1a;lazy用于懒加载&#xff0c;只能用var来对变量进行懒加载&#xff0c;有两种方式&#xff1a;1&#xff1a;lazy var first NSArray(objects: "1","2") 2&#xff1a;闭包形式&#xff1a;lazy var second:St…

python for循环连续输入五个成绩判断等级_Python基础(1)——输入输出/循环/条件判断/基本数据类型...

一、编程语言 1、 编译型语言&#xff1a;先编译&#xff0c;再执行 &#xff08;先编译成二进制&#xff09; 举例&#xff1a;英文书翻译成中文再看 C、C、C# 2、解释型语言&#xff1a;一边执行一边编译 举例&#xff1a;英文书找个翻译&#xff0c;它翻译一行你听一行 php、…

笔记本计算机无法开机怎么办,笔记本开机没反应,教您笔记本电脑开不了机怎么处理...

笔记本电脑使用的时间长了&#xff0c;都是会出现一些小故障&#xff0c;大毛病什么的&#xff0c;比如说像开机后&#xff0c;电源指示灯亮&#xff0c;但是电脑的显示器屏就是没有反应。这个问题让用户慌了神&#xff0c;为此&#xff0c;那笔记本电脑开不了机怎么解决&#…

离群点检测方法_干货 :时间序列异常检测

异常检测(Anomaly detection)是目前时序数据分析最成熟的应用之一,定义是从正常的时间序列中识别不正常的事件或行为的过程。有效的异常检测被广泛用于现实世界的很多领域,例如量化交易,网络安全检测、自动驾驶汽车和大型工业设备的日常维护。以在轨航天器为例,由于航天器昂…

centos6安装mysql并远程连接_MySQL5.7数据库安装与远程连接

系统&#xff1a;Redhat Linux 7.7MySQL版本&#xff1a;5.71. MySQL下载o 登录网站&#xff1a;https://dev.mysql.com/downloads/mysql/o 选择合适版本与系统Select version&#xff1a;5.7.31Select operating system&#xff1a;Red Hat Enterprise LinuxSelect OS Version…

远程桌面连计算机名称变ipv6,利用ipv6,从家里远程连接到学校的电脑上

本文的前奏是http://forum.neubt.com/viewthread.php?tid336038不过那个帖子里的机器用的是某ghost版的Win7&#xff0c;然后用msdn版的发现不行&#xff0c;估计是有什么设置没设好&#xff0c;故问了百度&#xff0c;现收集整理结果如下1.服务端当然要安装ipv6协议&#xff…

python小代码_Python爬虫入门有意思的小长代码

一段有意思的代码&#xff0c;有兴趣的可以研究研究。 需求 用户收到短信如&#xff1a;购买了电影票或者火车票机票之类的事件。然后app读取短信&#xff0c;解析短信&#xff0c;获取时间地点&#xff0c;然后后台自动建立一个备忘录&#xff0c;在事件开始前1小时提醒用户。…