- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用Scrapy网络爬虫框架小试牛刀
这次我们来玩一个在Python中很牛叉的爬虫框架——Scrapy。
scrapy 引见
标准引见
Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,格外出名,格外强悍。所谓的框架就是一个已经被集成了各种功能(高功能异步下载,队列,分布式,解析,长久化等)的具有很强通用性的项目模板。对于框架的学习,重点是要学习其框架的特性、各个功能的用法即可。
说人话就是
只需是搞爬虫的,用这个就van事了,由于里面集成了一些很棒的工具,并且爬取功能很高,预留有很多钩子便利扩展,实在是居家爬虫的不二之选。
windows下安装scrapy
命令
pip install scrapy
默认情况下,直接pip install scrapy可能会失败,假如没有换源,加上临时源安装试试,这里使用的是清华源,常见安装问题可以参考这个文章: Windows下安装Scrapy方法及常见安装问题总结——Scrapy安装教程。
命令
pip install scrapy -i /simple
scrapy创建爬虫项目
命令
scrapy startproject 项目名称
示例:创建一个糗事百科的爬虫项目(记得cd到一个洁净的名目哈)
scrapy startproject qiushibaike
注:此时,我们已经创建好了一个爬虫项目,但是爬虫项目是一个文件夹
进入爬虫项目
假如想要进入这个项目,就要cd进这个名目,如上上图所示,先cd 项目,再创建蜘蛛
项目名目结构解析
此时,我们就已经进入了项目,结构如下,有一个和项目名同名的文件夹和一个scrapy.cfg文件
scrapy.cfg # scrapy配置,特殊情况使用此配置
qiushibaike # 项目名同名的文件夹
items.py # 数据存储模板,定制要保存的字段
middlewares.py # 爬虫两头件
pipelines.py # 编写数据长久化代码
settings.py # 配置文件,例如:把握爬取速度,多大并发量,等
__init__.py
spiders # 爬虫名目,一个个爬虫文件,编写数据解析代码
__init__.py
呃,可能此时你并不能懂这么些名目什么意思,不过不要慌,使用一下可能就懂了,别慌。
创建蜘蛛
通过上述的操作,假设你已经成功的安装好了scrapy,并且进入了创建的项目
那么,我们就创建一个蜘蛛,对糗事百科的段子进行爬取。
创建蜘蛛命令
scrapy genspider 蜘蛛名称 网页的起始url
示例:创建糗事百科的段子蜘蛛
scrapy genspider duanzi
注:网页的起始url可以任凭写,可以任凭改,但是必需有
此时在spider文件夹下,会多一个duanzi.py文件
代码解释如下
爬取数据前预备
创建好蜘蛛之后,需要在配置一些东西的,不能直接就爬的,默认是爬取不了的,需要简约配置一下
打开settings.py文件,找到ROBOTSTXT_OBEY和USER_AGENT变量
ROBOTSTXT_OBEY配置
等于False不恪守robot协议,默认只要搜索引擎网站才会允许爬取,例如百度,必应等,个人爬取需要忽视这个,否则爬取不了
USER_AGENT配置
User-Agent是一个最基本的恳求必需带的参数,假如这个带的不是正常的,必定爬取不了。
User-Agent
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
小试牛刀之猎取糗事百科段子段子链接
预备工作做好了,那就开头吧!!!
此处我们需要有xpath的语法基础,其实挺简约的,没有基础的记得百度一下,其实不百度也没关系,跟着学,或许能看懂
实现功能
通过xpath猎取每个段子下的a标签连接
注:审查元素和按住crtl+f搜索内容和写xpath这里不再啰嗦
分析页面规章
通过审查工具,我们可以看到,class包含article的标签就是一个个的文章,可能你想到xpath可能可以这样写
xpath代码
//div[@class=article]
但是你会发觉一个都查不出来,由于是包含的关系,所以需要用contains关键字
我们需要这样写
xpath代码
//div[contains(@class,article)]
但是会发觉,这定位的太多了,并不是每个段子的div,所以我们要多包含几个,这样,就是每个段子的div了
//div[contains(@class,article) and co
您可能关注的文档
最近下载
- 2022年ECR ECN基础知识ppt课件.pptx VIP
- 2025年实验动物从业人员上岗证试题库+答案.docx
- 庄周梦蝶原文课件.pptx VIP
- 卧式储罐安装施工方案.docx VIP
- 二零二五版特种电缆定制与研发合作合同.docx
- 生长发育迟缓的诊断与干预.docx VIP
- 佳能 iC MF645Cx 645 彩色激光打印机中文维修手册.pdf VIP
- T_ZGCMITT 006.2-2022 介入诊疗服务质量评价 第2部分:介入诊疗技术规范.docx VIP
- SL 285-2020 水利水电工程进水口设计规范.pdf
- 2025年广州市花都区人民医院医护人员招聘备考试题及答案解析.docx VIP
文档评论(0)