问题描述
# 'run.py' in the root directory of a scrapy project
import os
from twisted.internet import reactor
from scrapy.crawler import CrawlerRunner
from scrapy.crawler import Crawler
from scrapy.utils.log import configure_logging
from scrapy.utils.project import get_project_settings
from directoryA.spiders.my_spider import MySpider
configure_logging()
settings = get_project_settings()
runner = CrawlerRunner()
d = runner.crawl(Crawler(MySpider,settings))
d.addCallback(lambda _: reactor.stop())
reactor.run()
import scrapy
class MySpider(scrapy.Spider):
name = "example_spider"
start_urls = "http://example-url.example"
def parse(self,response):
pass
def close(self,reason):
if reason == "shutdown":
print("success")
else:
print("failure")
如果抓取过程因按下 "success"
一次而中断,我希望执行 close() 方法(输出:ctrl + c
)。在命令行中调用的脚本是 run.py
。
在此先非常感谢您!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)