无法在scrapy spider中导入items.py

63lcw9qa  于 2023-10-20  发布在  其他
关注(0)|答案(3)|浏览(190)

我不能运行我的蜘蛛,使用shell命令“scrapy crawl kbb”,由于在寻找我的项目模块错误。
我的文件夹路径遵循标准的scrapy方向。

# -*- coding: utf-8 -*-
import scrapy
from scrapy.loader import ItemLoader
from kbb.items import KelleyItem

class KbbSpider(scrapy.Spider):
    name = 'kbb'
    allowed_domains = ['kbb.com']
    start_urls = ['https://www.kbb.com/cars-for-sale/cars/?distance=75']

    def parse(self, response):
        l = ItemLoader(item=Product(), response=response)
        l.xpath('Title','//div[@class="listings-container-redesign"]/div/div/a/text()').extract()
        l.xpath('Price','//div[@class="listings-container-redesign"]/div/div/div/div/span/text()').extract()
        return l.load_item()

items.py:

# -*- coding: utf-8 -*-

# Define here the models for your scraped items
#
# See documentation in:
# https://doc.scrapy.org/en/latest/topics/items.html

import scrapy

class KelleyItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    title = scrapy.Field()
    price = scrapy.Field()

当通过shell命令“scrapy crawl kbb”运行此命令时,我得到以下错误:“ModuleNotFoundError:没有名为kbb的模块”

cmssoen2

cmssoen21#

如果你的项目使用标准的scrapy文件夹结构,你可以使用这个:

from ..items import KelleyItem

参见Python中的相对导入

t5fffqht

t5fffqht2#

from items import KelleyItem

试试这个

t30tvxxf

t30tvxxf3#

有时它只是帮助在其他目录中创建相同的项目,并复制/粘贴所有文件的代码。

相关问题