首页 > 解决方案 > 如何解决“ModuleNotFoundError”没有名为“XXXX”的模块

问题描述

我在 Spyder/Anaconda 环境中使用 scrapy。我有一个项目正在尝试使用 items.py,无论我做什么,我都无法识别它,不断收到“ModuleNotFoundError”

这是我的 dsg_spider.py 和 items.py 文件中的内容。只要我不尝试在蜘蛛中使用 items.py 文件,它就会按预期运行和工作。我只是想以结构化格式获取数据,并希望在继续之前对其进行设置。

import scrapy
import sys
import os
from DSG2.items import Dsg2Item



        doc = Dsg2Item()
        doc['sku'] = response.xpath("//span[@itemprop='sku']/text()").extract()
        doc['price'] = response.xpath("//span[@itemprop='price']/text()").extract()
        doc['description'] = response.xpath("//meta[@itemprop='name']/@content").extract()

文件“F:/Anaconda/DSG2/DSG2/spiders/dsg_spider.py”,第 4 行,从 DSG2.items 导入 Dsg2Item

ModuleNotFoundError:没有名为“DSG2”的模块

这是 items.py 中的代码

import scrapy

class Dsg2Item(scrapy.Item):
     description = scrapy.Field()
     sku = scrapy.Field()
     price = scrapy.Field()
#brand = brand
#description = name

我拥有所有文件的文件夹结构

Anaconda (folder)
   DSG2 (folder)
   |---DSG2 (folder)
       |---_pycache_ (folder)
       |---spiders (folder)
           |---_pycache_ (folder)
           |---_init_.py (file)
           |---dsg_spider.py (file)
       |---_init_.py (file)
       |---items.py (file)
       |---middlewares.py (file)
       |---pipelines.py (file)
       |---settings.py (file)
   |---scrapy.cfg (file)

标签: pythonscrapyanacondaspyder

解决方案


对我来说,解决方案是在 Spyder 中,转到 Projects --- New Project --- Select Existing directory 然后导航到项目文件夹并选择创建,它创建了一个项目,当我运行它时,它不再抱怨..


推荐阅读