我需要上传csv文件的内容到PostgreSQL。内容不完美,包含错误,所以我不能只使用COPY命令,我需要跳过断行。
所以我决定使用pgloader-2.3.2
我有Win8 x64,Python 2.7.6x64,pip 1.5.6。
Pgloader需要psycopg2,我已经按照如下所述安装了它:

pip install git+https://github.com/nwcell/psycopg2-windows.git@win64-py27#egg=psycopg2

现在我在名单上看到了:
C:\dev\tools\pgloader-2.3.2>pip list
pip (1.5.6)
psycopg2 (2.5.2)
setuptools (3.6)

但我的蟒蛇看不到:
>>> import psycopg2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named psycopg2
>>>
>>> import sys
>>> print sys.path
['', 'C:\\Windows\\SYSTEM32\\python27.zip', 'C:\\dev\\tools\\Python27\\DLLs', 'C:\\dev\\tools\\Python27\\lib', 'C:\\dev\\tools\\Python27\\lib\\plat-win', 'C:\\dev\\tools\\Python27\\lib\\lib-tk', 'C:\\dev\\tools\\Python27', 'C:\\dev\\tools\\Python27\\lib\\site-packages']

我去了C:\dev\tools\Python27\Lib\site-packages\目录,发现只有psycopg2-2.5.2-py2.7.egg-info目录(没有psycopg2或类似的目录)。
如何解决这个问题?我已经花了一天的时间来解决一堆问题,现在这个。。。如此原始的任务需要如此多的努力,真是令人沮丧。

最佳答案

我试过使用GitHub repo在Windows上安装psycopg2,但也遇到了类似的问题,因为我选择了错误的版本(32位而不是64位)。PIP告诉我psycopg2已成功安装,但尝试运行时收到了相同的消息:
重要错误:没有名为psycopg2的模块
未安装并重试,使用正确的版本,我收到警告:
pip无法继续处理来自
由于
一个预先存在的构建目录。地点:
C:\Users\ADMINI~1\AppData\Local\Temp\2\pip\u build\u Administrator\psycopg2
这可能是由于以前的安装失败所致。皮普是
负责任,不认为它可以删除这个。请删除
然后再试一次。
在清理文件夹C:\ Users\my_username\AppData\Local\Temp\2\pip_build_my_username并重试后,我已成功地将其正确安装。
正如评论中指出的,另一种方法是使用:https://github.com/nwcell/psycopg2-windows.git@win32-py34

10-08 04:58