我在virtual env中安装了psycopg2,但是仍然很重要psycopg2

2024-10-01 13:43:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我遵循了以下步骤:[我使用的是Windows8,Python2.7.6]

  1. 我创建了一个虚拟环境venv,然后在上面安装了pip要求.txt安装所有库。在
  2. 我必须显式地创建一个名为配置.py设置操作系统环境变量。然后,我在其他文件中执行导入配置。在
  3. 我已经安装了postgresql并将bin文件夹添加到环境路径中
  4. psycopg2无法从运行中安装要求.txt. 所以,我下载了设置.py从网上,运行设置.py在虚拟环境中。后来当我在虚拟环境中执行“pip install psycopg2”时,它说需求已经满足了。在
  5. 现在我运行venv/Scripts/.py并得到以下错误:
Traceback (most recent call last):
  File "remote-alert.py", line 5, in <module>
    from database import db_session
  File "d:\Documents\Tutorials\Technologies\inMobi\soynerdito\HobbesAlert\databa
se.py", line 12, in <module>
    isolation_level="READ UNCOMMITTED" )
  File "d:\Documents\Tutorials\Technologies\inMobi\soynerdito\HobbesAlert\venv\l
ib\site-packages\sqlalchemy\engine\__init__.py", line 344, in create_engine
    return strategy.create(*args, **kwargs)
  File "d:\Documents\Tutorials\Technologies\inMobi\soynerdito\HobbesAlert\venv\l
ib\site-packages\sqlalchemy\engine\strategies.py", line 73, in create
    dbapi = dialect_cls.dbapi(**dbapi_args)
  File "d:\Documents\Tutorials\Technologies\inMobi\soynerdito\HobbesAlert\venv\l
ib\site-packages\sqlalchemy\dialects\postgresql\psycopg2.py", line 401, in dbapi

import psycopg2
ImportError: No module named psycopg2

在错误输出中,正在访问的psycopg2.py文件位于给定路径中。那我为什么会出错呢?在

我检查了很多在线给出的解决方案,比如postgresql必须安装在bin文件夹的路径中。我应该只使用虚拟环境python.exe为了运行我的程序,我不应该以超级用户的身份运行它,等等。到目前为止,没有任何东西对我有用。在

请帮忙!在


Tags: inpyvenvpostgresqlline虚拟环境psycopg2documents
2条回答

不幸的是,psycopg2需要在每个架构上进行编译;而且我确信如果您检查pip install psycopg2的输出,您会发现一些错误(即使最终它会安装它)。在

最好安装预编译的windows二进制文件,您可以找到at this website。在

我在windows中也遇到了同样的问题,因为我在python系统和虚拟环境中都安装了psycopg2,所以我发现LIB/site-packages都有一个名为psycopg2的文件夹,尽管在虚拟环境中内容较少。在

当我将系统Lib\site-packages\psycopg2的内容复制到虚拟环境中相应文件的内容时,效果很好。在

相关问题 更多 >