给定一个起始url池,我希望在parse_item()函数中标识原始url。
就我而言,抓取蜘蛛开始从初始的起始urls池中爬行,但在解析时,没有跟踪这些urls中的哪一个是初始urls。如何才能跟踪起点?
发布于 2016-09-19 22:25:46
如果您需要在爬行器中使用解析url,只需使用response.url:
def parse_item(self, response):
print response.url 但是如果你在爬虫之外需要它,我可以想到以下几种方法:
使用scrapy core api
在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(",") https://stackoverflow.com/questions/39572599
复制相似问题