Я изо всех сил пытаюсь понять, как правильно установить модуль python, чтобы к нему можно было получить доступ crontab. Ниже я изложил шаги, которые я сейчас предпринимаю, и хотел бы, чтобы кто-то сказал мне, где я делаю ошибку, и как я мог бы улучшить.Python Modules, Pip, Cronjobs
Все выглядит хорошо, пока я не к шагу 8
Все обратной связи, безусловно, приветствуем
Шаг 1 - Проверьте битбокс
>>> import beatbox
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named beatbox
Шаг 2 - Установка Beatbox
MacBook-Pro-10:~ $ sudo pip install beatboxxx
Downloading/unpacking beatboxxx
Downloading beatboxxx-21.5.tar.gz
Running setup.py (path:/private/tmp/pip_build_root/beatboxxx/setup.py) egg_info for package beatboxxx
warning: no files found matching '*.txt' under directory 'examples'
no previously-included directories found matching 'src/beatbox/tests/sfconfig.py'
Installing collected packages: beatboxxx
Running setup.py install for beatboxxx
warning: no files found matching '*.txt' under directory 'examples'
no previously-included directories found matching 'src/beatbox/tests/sfconfig.py'
Successfully installed beatboxxx
Cleaning up...
Шаг 3 - Проверить место битбокса
>>> import beatbox
>>> print beatbox.__file__
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/beatbox/__init__.pyc
Шаг 4 - Проверьте, если каталог находится в sys.path
>>> import sys
>>> for i in sys.path:
... print i
...
/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
/Library/Python/2.7/site-packages
Шаг 5 - Добавить Beatbox в sys.path
>>> import sys
>>> sys.path.append('/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/beatbox')
>>> x = '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/beatbox'
>>> x in sys.path
True
>>>
Шаг 6 - Создание файла импорта питона Beatbox MacBook -Pro-10: Рабочий стол $ vim beatbox_test.py
import beatbox
~
~
Шаг 7 - Создание кронтаб MacBook-Pro-10: Desktop $ кронтаб -e
*/1 * * * * python /Users/user123121231/Desktop/beatbox_test.py
crontab: installing new crontab
Шаг 8 - Проверьте почту для кронтаб успеха
MacBook-Pro-10:Desktop $ mail
"/var/mail/Message 1: 1 message 1 new
>N 1 MacBook-P Sun Oct 26 11:11 22/889 "Cron <MacBook-Pro-10> python /Users/user123121231/Desktop/beatbox_test.py"
From [email protected] Sun Oct 26 11:11:01 2014
X-Original-To: User123142324
Delivered-To: [email protected]
From: [email protected] (Cron Daemon)
To: [email protected]
Subject: Cron <[email protected]> python /Users/User123142324/Desktop/beatbox_test.py
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=User123142324>
X-Cron-Env: <USER=User123142324>
X-Cron-Env: <HOME=/Users/User123142324>
Date: Sun, 26 Oct 2014 11:10:00 -0700 (PDT)
Traceback (most recent call last):
File "/Users/User123142324/Desktop/beatbox_test.py", line 1, in <module>
import beatbox
ImportError: No module named beatbox":
UPDATE: до сих пор нет решения, но я нашел что-то из. Я внес изменения в beatbox_test.py быть следующее:
import sys
for i in sys.path:
print i
import beatbox
Который вернулся следующее:
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python26.zip
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-darwin
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac/lib-scriptpackages
/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-old
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload
/Library/Python/2.6/site-packages
Почему все указывает на 2.6 вместо 2.7?
вы поставили на ваш вопрос очень хорошо. Интересно, как у него такие низкие взгляды. что вы сделали в шаге 6, сделайте это в своем скрипте 'beatbox_test.py'. и проверьте его снова. –
единственная строка в beatbox_test.py - это 'import beatbox' – kmomo
Может быть, cron использует другую версию Python, чем вы установили bitbox для. Я рекомендую узнать путь рабочего python через 'which python', а затем установить абсолютный путь в crontab. Например:/usr/bin/python –