scrapy 2.3 如何运行我们的蜘蛛

2021-05-29 10:32 更新

要使蜘蛛正常工作,请转到项目的顶级目录并运行:

scrapy crawl quotes

此命令运行名为的spider ​quotes​ 我们刚刚添加的,这将发送一些 ​quotes.toscrape.com​ 领域。您将得到类似于以下内容的输出:

... (omitted for brevity)
2016-12-16 21:24:05 [scrapy.core.engine] INFO: Spider opened
2016-12-16 21:24:05 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2016-12-16 21:24:05 [scrapy.extensions.telnet] DEBUG: Telnet console listening on 127.0.0.1:6023
2016-12-16 21:24:05 [scrapy.core.engine] DEBUG: Crawled (404) <GET http://quotes.toscrape.com/robots.txt> (referer: None)
2016-12-16 21:24:05 [scrapy.core.engine] DEBUG: Crawled (200) <GET http://quotes.toscrape.com/page/1/> (referer: None)
2016-12-16 21:24:05 [scrapy.core.engine] DEBUG: Crawled (200) <GET http://quotes.toscrape.com/page/2/> (referer: None)
2016-12-16 21:24:05 [quotes] DEBUG: Saved file quotes-1.html
2016-12-16 21:24:05 [quotes] DEBUG: Saved file quotes-2.html
2016-12-16 21:24:05 [scrapy.core.engine] INFO: Closing spider (finished)
...

现在,检查当前目录中的文件。您应该注意到已经创建了两个新文件: quotes-1.html 和 引用-2.HTML, 将各个URL的内容作为 ​parse​ 方法指示。

注解

如果您想知道为什么我们还没有解析HTML,请稍等,我们很快就会讨论这个问题。

引擎盖下面发生了什么?

Scrapy安排了 ​scrapy.Request​ 返回的对象 ​start_requests​ 蜘蛛的方法。在接收到每个响应时,它实例化 ​Response​ 对象并调用与请求关联的回调方法(在本例中,为 ​parse​ 方法)将响应作为参数传递。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号