Scrapy在循环中爬行

时间:2017-07-19 10:24:30

标签: python scrapy twisted

试着绕着整个扭曲的反应堆/ scrapy履带布线。

我需要的是这样的事情:

while True:
    urls = get_latest_urls()

    crawl(MySpider(urls))
    ## block until crawl is complete ##

    mark_urls_as_crawled()
    time.sleep(0.01)

让此脚本无限期运行。

我该怎么做呢?谢谢!

解决

通过摆脱while循环并使用回调来管理以获得我想要的功能。

process = CrawlerProcess(settings=get_project_settings())
crawl()
reactor.run()

def crawl():
    d = process.crawl(MySpider(get_latest_urls()))
    d.addBoth(crawl_done)

def crawl_done():
    mark_urls_as_crawled()
    crawl()

0 个答案:

没有答案