Python3 ModuleNotFoundError при импорте из родительского каталога - PullRequest
1 голос
/ 02 марта 2020

У меня есть python virtualvenv в каталоге, и внутри него я создал проект scrapy, используя командную строку startproject.

Моя структура каталогов:

root
 | settings.py
 | env (virtual env)
 | requirements.txt (has scrapy, splash and other modules)
 | __init__.py
 |
 | shared (shared code)
 |  | __init__.py
 |  | helper.py
 |
 | scrapy_project
 |  | scrapy.cfg
 |  | WebCrawler
 |  |  | __init__.py
 |  |  | settings.py
 |  |  | items.py
 |  |  | spiders
 |  |  |  | SplashSpider.py

Когда я хочу запустить scrapy_project паук, я делаю cd scrapy_project, а затем scrapy crawl splash_spider, но проблема в том, что внутри моего SplashSpider.py I необходимо импортировать некоторый код из модуля shared в каталог root.

Я попытался импортировать helper.py с использованием from shared import helper, но я получаю эту ошибку ModuleNotFoundError: No module named 'shared'

Я пытаюсь создать несколько проектов scrapy в каталоге root и использовать shared модуль в пауках каждого проекта. Какой лучший способ сделать это?

...