def parse(self, response):
li_list = response.css("div.list_cont.Left_list_cont.Left_list_cont1 > div.tab_tj > div > div > ul > li")
for li in li_list:
item = CardItem()
item['href'] = li.css("a::attr(href)").extract()
item['title'] = li.css("a::attr(title)").extract()
scrapy.Request(url=item['href'],
callback=self.detail_parse, headers=self.headers) # 此行运行报错
yield item
def detail_parse(self, response):
print("ok")
pass
错误信息为:
Traceback (most recent call last):
File "d:\softs\python\python36-32\lib\site-packages\scrapy\utils\defer.py", line 102, in iter_errback
yield next(it)
File "d:\softs\python\python36-32\lib\site-packages\scrapy\spidermiddlewares\offsite.py", line 30, in process_spider_output
for x in result:
File "d:\softs\python\python36-32\lib\site-packages\scrapy\spidermiddlewares\referer.py", line 339, in <genexpr>
return (_set_referer(r) for r in result or ())
File "d:\softs\python\python36-32\lib\site-packages\scrapy\spidermiddlewares\urllength.py", line 37, in <genexpr>
return (r for r in result or () if _filter(r))
File "d:\softs\python\python36-32\lib\site-packages\scrapy\spidermiddlewares\depth.py", line 58, in <genexpr>
return (r for r in result or () if _filter(r))
File "E:\Project\python\win4000-images-crawler\tutorial\spiders\run_spider.py", line 27, in parse
yield scrapy.Request(url=item['href'], callback=self.detail_parse, headers=self.headers)
File "d:\softs\python\python36-32\lib\site-packages\scrapy\http\request\__init__.py", line 25, in __init__
self._set_url(url)
File "d:\softs\python\python36-32\lib\site-packages\scrapy\http\request\__init__.py", line 56, in _set_url
raise TypeError('Request url must be str or unicode, got %s:' % type(url).__name__)
TypeError: Request url must be str or unicode, got list:
已解决