如何在Windows 7上安装psycopg2

时间:2015-08-11 05:45:52

标签: postgresql python-2.7 psycopg2

我已经尝试了Error:(1, 0) Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to "c70732ebe5710634c90aa6755f18c037274b3dac". 并且遇到了以下错误:

错误:

pip install psycopg2

然后我尝试通过从Stickpole下载(ScrapeProj) C:\Users\e2sn7cy\Documents\GitHub\scraper>pip install psycopg2==2.5.4 Collecting psycopg2==2.5.4 Using cached psycopg2-2.5.4.tar.gz Complete output from command python setup.py egg_info: running egg_info creating pip-egg-info\psycopg2.egg-info writing pip-egg-info\psycopg2.egg-info\PKG-INFO writing top-level names to pip-egg-info\psycopg2.egg-info\top_level.txt writing dependency_links to pip-egg-info\psycopg2.egg-info\dependency_links.txt writing manifest file 'pip-egg-info\psycopg2.egg-info\SOURCES.txt' warning: manifest_maker: standard file '-c' not found Error: pg_config executable not found. Please add the directory containing pg_config to the PATH or specify the full executable path with the option: python setup.py build_ext --pg-config /path/to/pg_config build ... or with the pg_config option in 'setup.cfg'. ---------------------------------------- Command "python setup.py egg_info" failed with error code 1 in c:\users\e2sn7cy\appdata\local\temp\pi p-build-joij3x\psycopg2 文件来使用easy_install,我收到了以下错误:

.exe

但是,当我再次尝试通过pip安装时,我收到一条消息已经存在:

(ScrapeProj) C:\Users\e2sn7cy\Envs\ScrapeProj\Scripts>easy_install psycopg2-2.6.1.win-amd64-py2.7-pg9
.4.4-release.exe
Processing psycopg2-2.6.1.win-amd64-py2.7-pg9.4.4-release.exe
psycopg2.tests.test_module: module references __file__
psycopg2.tests.test_types_basic: module references __file__
creating 'c:\users\e2sn7cy\appdata\local\temp\easy_install-sa7asq\psycopg2-2.6.1-py2.7-win32.egg' and
 adding 'c:\users\e2sn7cy\appdata\local\temp\easy_install-sa7asq\psycopg2-2.6.1-py2.7-win32.egg.tmp'
to it
creating c:\users\e2sn7cy\envs\scrapeproj\lib\site-packages\psycopg2-2.6.1-py2.7-win32.egg
Extracting psycopg2-2.6.1-py2.7-win32.egg to c:\users\e2sn7cy\envs\scrapeproj\lib\site-packages
Adding psycopg2 2.6.1 to easy-install.pth file

Installed c:\users\e2sn7cy\envs\scrapeproj\lib\site-packages\psycopg2-2.6.1-py2.7-win32.egg
Processing dependencies for psycopg2==2.6.1
Finished processing dependencies for psycopg2==2.6.1

然后我认为我应该尝试导入然后我收到了这个错误:

(ScrapeProj) C:\Users\e2sn7cy\Envs\ScrapeProj>pip install psycopg2
Requirement already satisfied (use --upgrade to upgrade): psycopg2 in c:\users\e2sn7cy\envs\scrapepro
j\lib\site-packages\psycopg2-2.6.1-py2.7-win32.egg

现在我无法理解该怎么做。感谢

编辑1: 我还将PostgreSQL路径添加到系统路径变量

(ScrapeProj) C:\Users\e2sn7cy\Envs\ScrapeProj>python Python 2.7.10 (default, May 23 2015, 09:40:32) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import psycopg2 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\e2sn7cy\Envs\ScrapeProj\lib\site-packages\psycopg2-2.6.1-py2.7-win32.egg\psycopg2\__ init__.py", line 50, in <module> from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID ImportError: DLL load failed: %1 is not a valid Win32 application.

path:C:\Program Files\PostgreSQL\9.4

7 个答案:

答案 0 :(得分:6)

Craig Ringer给出了正确的答案,我只是添加了这个,因为我知道我们应该首先检查我们系统上安装的64位或32位Python版本。如果你有32位版本的Python,如果你试图安装64位,那么你将在导入时遇到上述错误。 用于检查版本:

import platform

platform.architecture()

你会得到这样的输出:

('32bit','WindowsPE')

答案 1 :(得分:5)

下载pre-packaged binary release of psycopg2 for Windows而不是自己编译。在Windows上编译很痛苦。

您可能需要删除半安装的尝试。

答案 2 :(得分:2)

  1. 从此页面中选择适当的版本:

      

    https://jsfiddle.net/zpnfzevb/

  2. 右键单击并选择copy link address

  3. 回到家中,使用easy_install <<Paste URL Here>>

  4. 冻结您的新要求:pip freeze > requirements.txt

答案 3 :(得分:2)

既然psycopg在PyPI中(截至2017年3月),只需启动具有管理员权限的命令提示符并安装如下:

python -m pip install -U pip
python -m pip install psycopg2

如果您没有安装pip,请按照此处的说明执行此操作: https://stackoverflow.com/a/12476379/2540707

答案 4 :(得分:1)

pip安装psycopg2-binary

这对我有用

答案 5 :(得分:0)

在Windows平台上为python安装软件包(包括这个有问题的psycopg2)的最佳/最简单的方法是:

1)安装anaconda和...... 2)使用Anaconda Navigator GUI安装/更新软件包。

通过这个可以避免在不同的软件包版本和安装之间发生的许多不一致和冲突。

答案 6 :(得分:0)

第1步:编译器的安装和配置

innerHTML

在执行任何操作之前,请安装或升级Setuptools Python软件包。它包含兼容性改进并增加了对编译器的自动使用:

pip install --upgrade setuptools

第2步:下载并安装PostgreSQL

在继续在您的虚拟环境中安装python软件包之前,请先下载postgres本身。它包含编译psycopg2 python软件包时所需的文件。只需使用PostgreSQL安装程序(例如版本10)。

重要提示:将postgres C:\ Program Files \ PostgreSQL \ 10 \ bin文件夹添加到您的路径。它包含psycopg2所需的.dll。

第3步:安装psycopg2

pip安装psycopg2

在Windows 7 + python 3.7上测试