使用Scrapy网络爬虫框架小试牛刀.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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

文档评论(0)

bob157641554 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档