我有一个类似于此的文件夹结构(我的示例包含所有必需的部分):
web-scraper/
scraper.py
modules/
__init__.py
config.py
website_one_scraper.py其中config.py只存储了一些全局变量。它看起来有点像:
global var1
var1 = "This is a test!"在website_one_scraper.py中,它看起来像这样:
import config
def test_function():
# Do some web stuff...
return = len(config.var1)
if __name__ == "__main__":
print(test_function)scraper.py看起来像这样:
from module import website_one_scraper
print(website_one_scraper.test_function())当website_scraper_one.py自己运行时,它工作得很好,因此if __name__ == "__main__"下的代码可以运行。但是,当我运行scraper.py时,我得到以下错误:
ModuleNotFoundError: No module named 'config'这是完整的错误和回溯(尽管名称不同,因为我为上面的示例更改了一些名称):
Traceback (most recent call last):
File "c:\Users\User\Documents\Programming\Work\intrack-web-scraper\satellite_scraper.py", line 3, in
<module>
from modules import planet4589
File "c:\Users\User\Documents\Programming\Work\intrack-web-scraper\modules\planet4589.py", line 5, in
<module>
import config
ModuleNotFoundError: No module named 'config'还要注意,在scraper.py中,我曾尝试用import website_one_scraper、from .modules import website_one_scraper和from . import website_one_scraper替换from modules import website_one_scraper,但它们都不起作用。
我的错误可能是什么原因?会不会与我导入所有内容的方式有关?
(我使用的是Python 3.9.1)
发布于 2021-01-09 22:11:43
在website_scraper_one.py中,尝试使用from . import config而不是import config.py
说明
的模块
https://stackoverflow.com/questions/65643535
复制相似问题