ImportError: ningún módulo llamado psycopg2


83

Al instalar el proceso de OpenERP 6, quiero generar un archivo de configuración con este comando,

cd / inicio / openerp / openerp-server / bin /

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

Pero siempre se mostró un mensaje

ImportError: No module named psycopg2

Cuando verifico el paquete psycopg2, ya está instalado,

Paquete python-psycopg2-2.4.5-1.rhel5.x86_64ya instalado y última versión

Nada que hacer

¿Qué pasa con esto?

Mi servidor es CentOS, he instalado Python 2.6.7.


25
Debe aceptar algunas respuestas a algunas de sus otras preguntas.
John Lyon

2
El paquete se instala para python2.4. Si ha instalado 2.6 manualmente, también debe instalar todos los demás paquetes para 2.6.
Keith

Ejecute el siguiente comando para confirmar la ruta del sistema de Python. $ python -c 'import sys; print sys.path'
Taizo Ito

¿Podrías intentarlo import psycopg2en la consola de Python?
Nilesh

Si obtuvo la respuesta, seleccione la respuesta.
Nilesh

Respuestas:


106

Paso 1: instalar las dependencias

sudo apt-get install build-dep python-psycopg2

Paso 2: Ejecute este comando en su virtualenv

pip install psycopg2 

Ref: Fernando Muñoz


2
Funcionó bien para mí. ¡Gracias!
MRocklin

1
Tuve que correr easy_install psycopg2, ¡pero tu pregunta me llevó allí!
JcKelley

8
Para usuarios de Python3: instalarlibpq-dev postgresql
alekwisnia

5
En Kubuntu 16.04, la build-depopción no funciona pero sudo apt-get install python-psycopg2funciona
Mugoma J. Okomba

4
en ubuntu 16.04 muestra E: No se puede localizar el paquete build-dep
Harun-Ur-Rashid

44

Enfrenté el mismo problema y lo resolví con los siguientes comandos:

sudo apt-get install libpq-dev
pip install psycopg2

Esto solucionó el mensaje de error You need to install postgresql-server-dev-X.Y ...que recibí después de ejecutar sudo apt-get install build-dep python-psycopg2(incluso aunque ya tenía instalado postgresql).
webelo


16

Intenta instalar

psycopg2-binary

con pip install psycopg2-binary --user


Esta es la única respuesta que me funcionó con python 3.7.3ydjango 3.0.2
Brian Joseph

2
¿para qué es --usuario?
Muhammad Inaam Munir

1
@MuhammadInaamMunir --user : Install to the Python user install directory for your platform. Typically ~/.local/, or %APPDATA%\Python on Windows.Puede consultar más información utilizando pip install --help.
fendiSetiawan

12

Intente ejecutar el comando import psycopg2en la consola de Python. Si obtiene el error, verifique sys.pathdónde busca Python el módulo de instalación. Si el directorio principal del python-psycopg2-2.4.5-1.rhel5.x86_64está en el sys.patho no. Si no está en sys.path, ejecútelo export PYTHONPATH=<parent directory of python-psycopg2-2.4.5-1.rhel5.x86_64>antes de ejecutar el servidor openerp.


9

Prueba con estos:

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

ejecute python e intente importar si insiste en instalarlo en sus sistemas, pruebe con python:

pip3 install psycopg2

3

Necesitas instalar el psycopg2módulo.

En CentOS: asegúrese de que Python 2.7+ esté instalado. De lo contrario, siga estas instrucciones: 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

Aunque esta es una pregunta de CentOS, aquí están las instrucciones para Ubuntu:

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

Citar: http://initd.org/psycopg/install/


Hmm obteniendoez_setup.py is deprecated and when using it setuptools will be pinned to 33.1.1
Arthur

3

Recientemente enfrenté este problema en mi servidor de producción. Había instalado pyscopg2 usando

sudo pip install psycopg2

Funcionó muy bien en mi local, pero me hizo ejecutar en mi servidor ec2.

sudo python -m pip install psycopg2

El comando anterior funcionó para mí allí. Publicar aquí por si acaso ayudaría a alguien en el futuro.


2

Tengo el mismo problema, pero este fragmento solo resolvió mi problema.

pip install psycopg2

1

Para Python3

Paso 1: instalar dependencias

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

Paso 2: instalar

pip install psycopg2

1

compruebe correctamente si tenía activado el entorno virtual de su peoject, si está desactivado, actívelo. ejecutar los siguientes comandos de cámara:

workon <your_env_name>
python manage.py runserver

Esta funcionando para mi


1

Enfrenté el mismo problema y desperdicié casi un día para resolver este problema. He hecho 2 cosas 1- usar python 3.6 en lugar de 3.8 2- cambiar la versión de django 2.2 (puede estar funcionando un poco más alto, pero cambio a 2.2)

Ahora está funcionando bien


1

Me encontré con el mismo problema cuando cambio a ubuntu desde Windows 10 ... lo siguiente funcionó para mí ... esto después de buscar en Google y probar numerosas sugerencias durante 2 horas ...

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

Espero que esto ayude a alguien que se ha encontrado con el mismo problema, especialmente al cambiar del sistema operativo Windows a Linux (Ubuntu).



0

Para python3 en ubuntu, esto funcionó para mí:

$sudo apt-get update
$sudo apt-get install libpq-dev
$sudo pip3 install psycopg2-binary
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.