Visual Studio 代码中找不到模块错误

Module not found error in Visual Studio Code

在设计时使用自动完成,我可以添加行 from myitems import CarItem

然而,当我 运行 我的蜘蛛 scrapy crawl keizer -o allobjects.json,

我收到错误:

ModuleNotFoundError: No module named 'myitems'

输出:

  File "C:\scrapy\hw_spiders\spiders\keizer.py", line 11, in <module>
    from myitems import CarItem
ModuleNotFoundError: No module named 'myitems'

我的文件夹结构:

我的文件:

keizer.py

import json
import re
import os

import scrapy
import time
from scrapy_splash import SplashRequest
from scrapy.selector import Selector
from scrapy.http import HtmlResponse

from myitems import CarItem

不确定是否相关,我也将其添加到“.vscode\settings.json”文件中:

{
    "python.analysis.extraPaths": [
        "./hw_spiders"
    ]
}

我已经在这里查看并阅读了相关导入,但我不知道如何将建议的解决方案映射到我当前的项目结构,因为它们完全不同。如果我的项目结构错误或不推荐,我也很乐意听到。

再次尝试

我把from myitems import CarItem改成了from .myitems import CarItem。 我立即看到设计时错误:

Import ".myitems" could not be resolved (PylancereportMissingImports)

但我 运行 蜘蛛无论如何。

当我 运行 C:\scrapy\hw_spiders> scrapy crawl keizer -o allobjects.json 时,我得到:

File "C:\scrapy\hw_spiders\spiders\keizer.py", line 11, in from .myitems import CarItem ModuleNotFoundError: No module named 'hw_spiders.spiders.myitems'

当我运行C:\scrapy> scrapy crawl keizer -o allobjects.json时,我得到:

File "C:\scrapy\hw_spiders\spiders\keizer.py", line 11, in from .myitems import CarItem ModuleNotFoundError: No module named 'hw_spiders.spiders.myitems'

Scrapy 应安装在您当前使用的 python 环境中。

打开一个集成终端和运行

pip show scrapy

检查其位置是否为current environment\lib\site-packages.

如果没有,请运行宁pip install scrapy重新安装。

如果myitems文件夹在同一个directory文件夹中,则尝试如下:

from ..myitems import CarItem