我试图编写一个通用的“ Master”蜘蛛,将其与执行期间动态插入的“ start_urls”和“ allowed_domains”一起使用。(最终,我将这些存储在数据库中,然后将其拉出,然后用于初始化和抓取每个数据库条目的新蜘蛛。)
目前,我有两个文件:
为了编写这两个文件,我引用了以下内容:
我考虑了scrapyD,但我认为它不是我想要的...
这是我写的:
MySpider.py-
import scrapy
class BlackSpider(scrapy.Spider):
name = 'Black1'
def __init__(self, allowed_domains=[], start_urls=[], *args, **kwargs):
super(BlackSpider, self).__init__(*args, **kwargs)
self.start_urls = start_urls
self.allowed_domains = allowed_domains
#For Testing:
print start_urls
print self.start_urls
print allowed_domains
print self.allowed_domains
def parse(self, response):
#############################
# Insert my parse code here #
#############################
return items
Run Code Online (Sandbox Code Playgroud)
RunSpider.py-
import scrapy
from scrapy.crawler import CrawlerProcess
from MySpider import BlackSpider
#Set my …Run Code Online (Sandbox Code Playgroud)