我的scrapyspider有问题,它使用以下代码:
class MySpider(BaseSpider):
name = "craig"
allowed_domains = ["craigslist.org"]
start_urls = ["http://sfbay.craigslist.org/search/npo"]
def parse(self, response):
hxs = HtmlXPathSelector(response)
titles = hxs.xpath("//span[@class='pl']")
items = []
for i in titles:
item = CraigslistSampleItem()
item["title"] = i.select("a/text()").extract()
item["link"] = i.select("a/@href").extract()
items.append(item)
return items
这是我的items.py
from scrapy.item import Item, Field
class CraigslistSampleItem(Item):
title = Field()
link = Field()
当我使用scrapy crawl craig
运行蜘蛛时,我收到以下错误:
TypeError: 'float' object is not iterable
2017-03-07 10:13:44 [scrapy.core.scraper] ERROR: Error downloading <GET http://sfbay.craigslist.org/search/npo>
TypeError: 'float' object is not iterable
我该如何解决这个问题? 感谢
答案 0 :(得分:5)
使用scrapy
安装conda
后,我遇到了类似的错误,导致获得scrapy
版本1.1和twisted
版本17.1.0。
我认为scrapy
版本低于1.3.2和twisted
版本17.x之间存在不兼容性。我可以通过将twisted
降级到版本16.x或将scrapy
升级到版本1.3.3来解决此问题。