Scrapy - 找不到项属性

2 投票
1 回答
2618 浏览
提问于 2025-04-20 06:57

我正在写一个爬虫程序,需要定义一个项目,像这样:

import scrapy

    class getInfoItem(scrapy.Item):
        description = scrapy.Field()
        rating = scrapy.Field()
        image = scrapy.Field()
        console = scrapy.Field()
        pass

当我尝试运行这个爬虫时,它在类声明的那一行报错,提示说 scrapy 没有叫 Item 的属性,具体来说是:

AttributeError: 'module' object has no attribute 'Item'

我看到有人说这可能是因为某个地方有循环依赖,但我不太确定该怎么处理。

编辑:文件夹目录:

getInfo/
    scrapy.cfg
    getInfo/
    __init__.py
    __init__.pyc
    items.py
    items.pyc
    pipelines.pyc
    settings.py
    settings.pyc
    spider/
        getInfo_spider.py
        getInfo_spider.pyc
        __init__.py
        __init.pyc

1 个回答

3

根据你使用的Scrapy版本,ItemField可能在scrapy.item里面,而不是直接在scrapy模块中找到:

from scrapy.item import Item, Field

class getInfoItem(Item):
    description = Field()
    rating = Field()
    image = Field()
    console = Field()

想了解更多信息,可以对比Scrapy文档中Items部分的内容,查看版本0.220.24的区别。

撰写回答