gpt4 book ai didi

python - Scrapy导入错误: cannot import name "______Item"

转载 作者:太空宇宙 更新时间:2023-11-03 17:50:02 24 4
gpt4 key购买 nike

我是 python 2.7 和 Scrapy 的新手,在从命令行运行“scrapycrawl prop$”时收到以下错误。我认为这是一个简单的修复,因此,非常感谢任何帮助!

错误消息:

  File"C:\Anaconda2\propub\propub\spiders\propub_spider.py", line 4, in <module>
from propub.items import propubItem
ImportError: cannot import name propubItem

items.py:

import scrapy
from scrapy.item import Item, Field

class PropubItem(scrapy.Item):
payee = scrapy.Field()
link = scrapy.Field()
city = scrapy.Field()
state = scrapy.Field()
company = scrapy.Field()
amount = scrapy.Field()
pass

propub_spiders.py:

import scrapy 
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from propub.items import propubItem

class propubSpider(CrawlSpider):
name = 'prop$'
allowed_domains = ['https://projects.org']
start_urls = [
'https://projects/search?state%5Bid%5D=33',
'https://projects/search?page=2&state%5Bid%5D=33',
'https://projects/search?page=3&state%5Bid%5D=33']

rules = (Rule(SgmlLinkExtractor(allow=('\\search?page=\\d')), 'parse_start_url', follow=True),)

def parse(self, response):
for sel in response.xpath('//*[@id="payments_list"]/tbody'):
item = propubItem()
item['payee'] = sel.xpath('tr[1]/td[1]/a[2]/text()').extract()
item['link'] = sel.xpath('tr[1]/td[1]/a[1]/@href').extract()
item['city'] = sel.xpath('tr[1]/td[2]/text()').extract()
item['state'] = sel.xpath('tr[1]/td[3]/text()').extract()
item['company'] = sel.xpath('tr[1]/td[4]').extract()
item['amount'] = sel.xpath('tr[1]/td[7]/span/text()').extract()
yield item

最佳答案

这只是一个错字。您的元素类别名称​​以大写字母开头

替换:

from propub.items import propubItem

与:

from propub.items import PropubItem

关于python - Scrapy导入错误: cannot import name "______Item",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29246277/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com