从脚本设置Scrapy的start_urls
我有一个可以正常工作的scrapy爬虫,并且我可以通过一个单独的脚本来运行它,具体可以参考这里的例子。我还为我的脚本创建了一个wxPython的图形界面,这个界面里有一个多行的文本框,用户可以在里面输入要抓取的URL列表,还有一个提交按钮。目前,我的爬虫里是把start_urls写死的——我该如何把用户在文本框中输入的URL传递给爬虫里的start_urls数组呢?非常感谢你的帮助!
2 个回答
9
alecxe 的回答对我没用。我的解决方案适用于 Scrapy==1.0.3:
from scrapy.crawler import CrawlerProcess
from tutorial.spiders.some_spider import SomeSpider
process = CrawlerProcess()
process.crawl(SomeSpider, start_urls=["http://www.example.com"])
process.start()
这可能对将来的某些人有帮助。
4
只需要在你的 Spider
实例上设置 start_urls
就可以了:
spider = FollowAllSpider(domain=domain)
spider.start_urls = ['http://google.com']