ImportError: нет модуля с именем psycopg2

83

При установке OpenERP 6 я хочу создать файл конфигурации с помощью этой команды,

cd / главная / openerp / openerp-server / bin /

./openerp-server.py -s --stop-after-init -c /home/openerp/openerp-server.cfg

Но всегда показывали сообщение

ImportError: No module named psycopg2

Когда я проверяю пакет psycopg2, он уже установлен,

Пакет python-psycopg2-2.4.5-1.rhel5.x86_64уже установлен и последняя версия

Нечего делать

Что в этом плохого?

Мой сервер - CentOS, я установил python 2.6.7.

ws_123
источник
25
Вам нужно принять некоторые ответы на некоторые другие ваши вопросы.
Джон Лайон
2
Пакет устанавливается для python2.4. Если вы установили 2.6 вручную, вам также необходимо установить все остальные пакеты для 2.6.
Кейт
Выполните следующую команду, чтобы подтвердить системный путь python. $ python -c 'import sys; print sys.path'
Taizo Ito
Не могли бы вы попробовать import psycopg2на консоли python?
Nilesh
Если вы получили ответ, выберите ответ.
Nilesh 03

Ответы:

106

Шаг 1. Установите зависимости

sudo apt-get install build-dep python-psycopg2

Шаг 2. Запустите эту команду в своем виртуальном окружении.

pip install psycopg2 

Ссылка: Фернандо Муньос

Tarique
источник
2
Хорошо сработал для меня. Благодаря!
MRocklin
1
Мне пришлось бежать easy_install psycopg2, но ваш вопрос привел меня туда!
JcKelley 03
8
Для пользователей Python3: установкаlibpq-dev postgresql
alekwisnia
5
В Kubuntu 16.04 build-depопция не работает, но sudo apt-get install python-psycopg2работает
Мугома Дж. Окомба
4
в ubuntu 16.04 он показывает E: Невозможно найти пакет build-dep
Харун-Ур-Рашид
44

Я столкнулся с той же проблемой и решил ее с помощью следующих команд:

sudo apt-get install libpq-dev
pip install psycopg2
Safvan CK
источник
Это устранило сообщение об ошибке, You need to install postgresql-server-dev-X.Y ...которое я получил после запуска sudo apt-get install build-dep python-psycopg2(даже если подумал, что у меня уже установлен postgresql).
webelo
37

Используйте psycopg2-binary вместо psycopg2 .

pip install psycopg2-binary

Или вы получите предупреждение ниже:

UserWarning: пакет psycopg2 wheel будет переименован в версии 2.8; чтобы продолжить установку из двоичного файла, используйте вместо этого команду «pip install psycopg2-binary». Подробнее см. Http://initd.org/psycopg/docs/install.html#binary-install-from-pypi .

Ссылка: Выпущен Psycopg 2.7.4 | Psycopg

Ян Цидун
источник
16

Попробуйте установить

psycopg2-бинарный

с участием pip install psycopg2-binary --user

Ю. Язарел
источник
Это единственный ответ , который работал для меня python 3.7.3иdjango 3.0.2
Brian Joseph
2
для чего нужен --user?
Мухаммад Инаам Мунир
1
@MuhammadInaamMunir --user : Install to the Python user install directory for your platform. Typically ~/.local/, or %APPDATA%\Python on Windows.Вы можете проверить дополнительную информацию, используя pip install --help.
fendiSetiawan
12

Пожалуйста, попробуйте запустить команду import psycopg2в консоли python. Если вы получили сообщение об ошибке, проверьте, sys.pathгде python ищет модуль установки. Если родительский каталог python-psycopg2-2.4.5-1.rhel5.x86_64находится в папке sys.path. Если его нет, sys.pathзапустите export PYTHONPATH=<parent directory of python-psycopg2-2.4.5-1.rhel5.x86_64>перед запуском сервера openerp.

Нилеш
источник
9

Попробуйте с этим:

virtualenv -p /usr/bin/python3 test_env
source test_env/bin/activate
pip install psycopg2

запустите python и попробуйте импортировать, если вы настаиваете на его установке в своей системе, попробуйте python:

pip3 install psycopg2
Cp Verma
источник
3

Вам необходимо установить psycopg2модуль.

В CentOS: убедитесь, что установлен Python 2.7+. Если нет, следуйте этим инструкциям: http://toomuchdata.com/2014/02/16/how-to-install-python-on-centos/

# Python 2.7.6:
$ wget http://python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
$ tar xf Python-2.7.6.tar.xz
$ cd Python-2.7.6
$ ./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
$ make && make altinstall
$ yum install postgresql-libs

# First get the setup script for Setuptools:
$ wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py

# Then install it for Python 2.7 and/or Python 3.3:
$ python2.7 ez_setup.py

$ easy_install-2.7 psycopg2

Несмотря на то, что это вопрос CentOS, вот инструкции для Ubuntu:

$ sudo apt-get install python3-pip python-distribute python-dev
$ easy_install psycopg2

Цитируйте: http://initd.org/psycopg/install/.

шарвер2
источник
Хм, получаюez_setup.py is deprecated and when using it setuptools will be pinned to 33.1.1
Артур
3

Недавно столкнулся с этой проблемой на моем производственном сервере. Я установил pyscopg2, используя

sudo pip install psycopg2

Он прекрасно работал на моем локальном компьютере, но заставил меня поработать на моем сервере ec2.

sudo python -m pip install psycopg2

Приведенная выше команда работала для меня там. Публикация здесь на всякий случай поможет кому-то в будущем.

Водолей
источник
2

У меня та же проблема, но только этот фрагмент решил мою проблему.

pip install psycopg2
yts61
источник
1

Для Python3

Шаг 1. Установите зависимости

sudo apt-get install python3 python-dev python3-dev

Шаг 2: Установите

pip install psycopg2
Вальтер Швейцер
источник
1

проверьте правильно, включен ли ваш виртуальный env вашего объекта, если он выключен, включите его. выполнить следующие команды:

workon <your_env_name>
python manage.py runserver

Это работает для меня

Софт Техно
источник
1

Я столкнулся с той же проблемой и потратил почти день, чтобы решить эту проблему. Я сделал 2 вещи: 1 - использовать python 3.6 вместо 3.8 2 - изменить версию django 2.2 (может работать немного выше, но я перехожу на 2.2)

Теперь все работает нормально

КАМРАН
источник
1

Возникла та же проблема, когда я переключаюсь на ubuntu из Windows 10 ... у меня сработало следующее ... это после поиска в Google и многочисленных предложений в течение 2 часов ...

sudo apt-get install libpq-dev, then pip3 install psycopg2

Надеюсь, это поможет кому-то, кто столкнулся с той же проблемой, особенно при переходе с ОС Windows на Linux (ubuntu).

Ричард Росарио
источник
0

Для python3 на ubuntu это сработало для меня:

$sudo apt-get update
$sudo apt-get install libpq-dev
$sudo pip3 install psycopg2-binary
Николь Дуглас
источник