给定一个启动网址池,我想在parse_item()函数中识别原始网址。
就我而言,scrapy蜘蛛开始从最初的起始网址中爬行,但是在解析时,没有哪些网址是最初的网址。如何跟踪出发点?
答案 0 :(得分:-1)
如果您需要在蜘蛛内部使用解析网址,只需使用response.url:
def parse_item(self, response):
print response.url
但是如果你需要蜘蛛外面我可以想到以下方法:
在scrapycaller.py
中from subprocess import call
urls = 'url1,url2'
cmd = 'scrapy crawl myspider -a myurls={}'.format(urls)
call(cmd, shell=True)
在myspider里面:
class mySpider(scrapy.Spider):
def __init__(self, myurls=''):
self.start_urls = myurls.split(",")