def get_info(self, response):
item = baidu_item()
item['id']=response.meta['id']
item['name']=response.meta['name']
redirect_url_list = response.xpath('''//h3/a/@href''').extract() for url in redirect_url_list:
if "http" in url or "https" in url:
scrapy.Request(url=url, headers=self.headers, timeout=5,meta={'item':item})def parse(self, response):
item=response.meta['item'] if self.filter_domain(response.url) == 0: if len(re.findall('/', response.url)) <= 3: if self.filter_figure(response.url): if re.findall('[^/]+(?!.*/)', response.url): if self.filter_figure(response.url):
item['url']=[response.url]現(xiàn)在情況是這樣,我在循環(huán)的時候?qū)懸粋€ url 規(guī)則,但是如果按照item['url']=[response.url] 這種寫法每次只能傳遞一個url,我現(xiàn)在要把循環(huán)一遍的url 傳遞給item['url'] 怎么寫呢?
1 回答

慕無忌1623718
TA貢獻1744條經(jīng)驗 獲得超4個贊
用遞歸函數(shù)就好啊
類似這種
def fact(n): if n==1: return 1 return n * fact(n - 1)
當然也可以使用while進行判斷
while 內(nèi)部還存在多層: 繼續(xù)解析
添加回答
舉報
0/150
提交
取消