Я пытаюсь выполнить пестрый проект на сервере человечности. Для которого я должен добавить путь проекта к пути Python.
Я создал a .bash_profile
файл в /home
каталог со следующим содержанием:
PYTHONPATH=$PYTHONPATH:/home/john/Desktop/myscraper/
EXPORT $PYTHONPATH
Но я получаю ошибку, выполняющую мой файл Python, заявляя, что это не нашло модуль.
ImportError: No module named myscraper.items
Я пытался использовать следующие пути, но ничто не работает.
/home/john/Desktop/myscraper/
/home/john/Desktop/myscraper
home/john/Desktop/myscraper/
home/john/Desktop/myscraper
Файлы конфигурации принадлежат Вашего персонального корневого каталога (/home/$USER
, $HOME
или просто ~
), не в /home
каталог. В Вашем случае, который будет /home/john
.
Также удостоверьтесь, что использовали корректное преобразование регистра, это export
во всем нижнем регистре.
С тех пор export
не получает доступ, но ссылается на переменную, Вы не используете $
знак: export PYTHONPATH
Вы уверены, что хотите иметь это в Вашем .bash_profile
и не Ваш .bashrc
? Можно читать на различии здесь.
В любом случае необходимо будет работать source ~./bash_profile
(или source ~./bashrc
если Вы идете с тем) для Ваших изменений для вступления в силу.
В дополнение к ответу NeoTheThird:
Ubuntu не использует ~/.bash_profile
по умолчанию. Необходимо использовать ~/.profile
вместо этого.
Путь, который необходимо использовать, /home/john/Desktop/myscraper
, хотя /home/john/Desktop/myscraper/
также работал бы. Пути, которые не запускаются с наклонных черт, являются относительными, не абсолютными, так не будет работать, если рабочий каталог не /
. Больше деталей здесь о Википедии.
Можно соединить определение и экспортировать операторы, и если PYTHONPATH уже не определяется, можно кончить $PYTHONPATH:
в запуске.
export PYTHONPATH=/home/john/Desktop/myscraper