跳转到帖子

游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

TheHackerWorld官方

精选回复

发布于
Scrapy实例教程
Scrapy是一套根据Twisted异步处理架构,纯Python网络爬虫架构。

用户只需开发和设计多个简单的控制模块,就可以轻松完成一个网络爬虫。可用于捕捉网页的具体内容及其图片,应用简单方便。

Scrapy架构主要是由于ScrapyEngine(模块),Scheduler(调度器),Downloader(下载工具),Spider(网络爬虫),ItemPipeline此外,还有两个常见的消息中间件:DownloaderMiddlewares(免费下载消息中间件)和SpiderMiddlewares(Spider消息中间件)。

1.Scrapy架构架构图
ScrapyEngine(模块):
承担Spider,ItemPipeline,Downloader,Scheduler中间通信、数据信号、数据传输等。

Scheduler(调度):
它承担接受模块推送的模块Request要求,并按一定的方法进行梳理排序,入团,当模块需要时,交给模块。

Downloader(下载工具):
免费下载ScrapyEngine(模块)全部上传Requests并掌握要求,Responses交还给ScrapyEngine(模块),由模块交付Spider去处理。

Spider(网络爬虫):
它承担所有的解决方案Responses,从中分析提取数据,获取数据Item字段所需的信息,以及必须跟踪的信息URL提交给模块,再次进入Scheduler(调度器)。

ItemPipeline(管路):
它承担解决Spider中掌握到的Item,然后进行后期制作(深入分析、过度考虑、储存等)。

DownloaderMiddlewares(免费下载消息中间件):
您可以将其视为可以自定义扩展下载功能的部件。

SpiderMiddlewares(Spider消息中间件):
你可以看作是一个自设扩展和使用模块和Spider中间通信功能的部件。

2.使用说明书
Scrapy控制模块和使用说明书如下:
大家应用Scrapy架构获取数据,一般只需编写两类编码:网络爬虫(Spider控制模块)和管道(ItemPipeline控制模块)。网络爬虫控制模块承担必须爬行的爬行Url在连接和网页分析中,管道控制模块负责将数据存储到数据库系统或文档中。

3.应用案例
我们可以快速应用Scrapy建筑快速创建项目,然后简单地写一个网络爬虫文档,获取数据。例如,爬百度主页文章的标题:
importscrapy
#爬虫类
classBaiduSpider(scrapy.Spider):
#网络爬虫名称
name='baidu'
#爬取页面
start_urls=['https://baidu.com']
#网页解析函数
defparse(self,response):
title=response.css('title::text').extract_first()
print("百度主页文章标题:"+title)

运行结果:
百度主页文章标题:百度,你会知道的

创建帐户或登录后发表意见

最近浏览 0

  • 没有会员查看此页面。