我目前正在研究一个在电子商务网站上爬行并提取数据的蜘蛛。同时,我还需要在产品中保存 url 跟踪,例如
{
'product_name: "apple iphone 12",
'trail': ["https://www.apple.com/", "https://www.apple.com/iphone/", "https://www.apple.com/iphone-12/"
}
与用户从起始页面转到产品相同。
我在用scrapy 2.4.1
我目前正在研究一个在电子商务网站上爬行并提取数据的蜘蛛。同时,我还需要在产品中保存 url 跟踪,例如
{
'product_name: "apple iphone 12",
'trail': ["https://www.apple.com/", "https://www.apple.com/iphone/", "https://www.apple.com/iphone-12/"
}
与用户从起始页面转到产品相同。
我在用scrapy 2.4.1
我在回调中将以前的 url 作为关键字参数传递
def parse(self, response):
request = scrapy.Request('http://www.example.com/index.html',
callback=self.parse_page2,
cb_kwargs=dict(main_url=response.url))
request.cb_kwargs['foo'] = 'bar' # add more arguments for the callback
yield request
def parse_page2(self, response, main_url, foo):
yield dict(
main_url=main_url,
other_url=response.url,
foo=foo,
)