Можно ли выбрать, какая версия Python используется Scrapy? Я запускаю Scrapy на Ubuntu 10.04, который поставляется с Python 2.6. У меня есть Python 2.7, установленный на моей машине, и хотел бы воспользоваться некоторыми функциями этой более поздней версии, но не знаю, как настроить Scrapy на 2.7. Когда я набираю "python" в терминал, он запускает Python 2.6 ("python2.7" загружает Python 2.7). Идеи?
Правильный способ сделать это - организовать так, чтобы ваш специальный Python находился в своем подкаталоге с поддиректорией bin и lib. Затем вы помещаете этот подкаталог в PATH
среды PATH
перед системными двоичными каталогами.
Например, скажем, у вас есть /python directory
и вы поместите двоичный код python в /python/bin/python
. Независимо от того, выполняете ли вы это, создавая python с нуля, копируя файлы или ссылаясь на существующие файлы, это не важно. Они все будут работать. Обратите внимание, что может быть недостаточно просто связать с существующим двоичным кодом python2.7, так как это, скорее всего, ожидает найти библиотеки Python в /python/lib, если вы запустите его таким образом.
Второй шаг - запустить export PATH=/python/bin:$PATH
. Вы можете ввести это в приглашении оболочки, чтобы экспериментировать, но более длительный срок, который должен либо заходить в файл ~/.profile
, либо в специальный сценарий оболочки, используемый для запуска вашего приложения, например, для лечения.
Обратите внимание, что очень популярным способом для разработчиков Python является установка и настройка virtualenv, но если вы не собираетесь менять среду каждый день, это, вероятно, слишком велико.
Если у вас есть эта проблема на многих машинах, вы можете захотеть создать пользовательскую сборку Python, которую вы можете использовать повсюду, например, портативный питон, созданный с помощью этого скрипта.
Когда я набираю "python" в терминал, он запускает Python 2.6 ("python2.7" загружает Python 2.7). Идеи?
vic@ubuntu:~$ which python
/usr/bin/python
vic@ubuntu:~$ cd /usr/bin
vic@ubuntu:/usr/bin$ ls -l python
lrwxrwxrwx 1 root root 9 2011-05-09 19:38 python -> python2.7
vic@ubuntu:/usr/bin$
Исполняемый файл python
является символической ссылкой. Измените его, чтобы указать версию 2.7, и все готово.
Это сделает версию 2.7 по умолчанию.
В противном случае запустите свои скрипты, которым нужен python 2.7, например: python2.7 my_script_which_uses_scrapy.py