Python 在Pycharm中使用Pycurl
我正在尝试运行一个脚本,该脚本的开头是:Python 在Pycharm中使用Pycurl,python,libcurl,pycharm,pycurl,Python,Libcurl,Pycharm,Pycurl,我正在尝试运行一个脚本,该脚本的开头是: from pycurl import * 但是,这会引发错误: Traceback (most recent call last): File "/Users/adamg/PycharmProjects/untitled/UrlToText.py", line 1, in <module> from pycurl import * ImportError: dlopen(/Users/adamg/anaconda/lib/pyt
from pycurl import *
但是,这会引发错误:
Traceback (most recent call last):
File "/Users/adamg/PycharmProjects/untitled/UrlToText.py", line 1, in <module>
from pycurl import *
ImportError: dlopen(/Users/adamg/anaconda/lib/python2.7/site-packages/pycurl.so, 2): Library not loaded: libcurl.4.dylib
Referenced from: /Users/adamg/anaconda/lib/python2.7/site-packages/pycurl.so
Reason: Incompatible library version: pycurl.so requires version 8.0.0 or later, but libcurl.4.dylib provides version 7.0.0
回溯(最近一次呼叫最后一次):
文件“/Users/adamg/PycharmProjects/untitled/UrlToText.py”,第1行,在
从pycurl导入*
导入错误:dlopen(/Users/adamg/anaconda/lib/python2.7/site-packages/pycurl.so,2):未加载库:libcurl.4.dylib
引用自:/Users/adamg/anaconda/lib/python2.7/site-packages/pycurl.so
原因:库版本不兼容:pycurl.so需要8.0.0或更高版本,但libcurl.4.dylib提供7.0.0版本
我试图理解这个错误,以及需要做什么来纠正它。我正在使用PyCharm V3.1。看起来您需要安装一个更新版本的curl。根据您的
/Users/…
路径,您看起来像是在mac上(但您可能应该在问题中明确地包括这一点)。Mac附带了旧版本的curl
我刚刚尝试在Mac OS X 10.9.2上安装pycurl
,然后打开python shell并
>>> from pycurl import *
这起作用了。我有一个新的安装,而不是升级,Mavericks。如果您升级到Mavericks,这可能就是为什么您有一个旧版本的libcurl
。如果这在python shell中不起作用,那么很可能您有一个旧版本的libcurl.4.dylib,很可能这与pycharm无关
要获取更新版本,请运行
$ brew install curl
下一部分是一个小技巧,不是“正确”的方法,但我感觉它会起作用,这是尝试让某些东西起作用的最简单的方法
只需复制brew抓取的libcurl.4.dylib
,并在复制后将其放入/usr/lib
,以便在无法正常工作时将其放回:
$ sudo cp /usr/lib/libcurl.4.dylib /usr/lib/libcurl.4.dylib.bk
$ sudo cp /usr/local/opt/curl/lib/libcurl.4.dylib /usr/lib/libcurl.4.dylib
试着从命令行运行curl,比如curl www.google.com
。如果它仍然有效,那么curl仍然有效,我们很好
现在再次尝试运行脚本。希望它能找到更新后的
libcurl.4.dylib
,并成功导入。如果仍然无法使用,请尝试卸载并重新安装pycurl
谢谢。不过,这似乎并没有解决问题。不幸的是,链接的答案也没有帮助。您是否重新启动了正在使用的shell?你也会犯同样的错误吗?我不知道为什么,但有时在安装之后,我甚至不得不重新启动,或者至少注销并重新登录。另外,您使用的是什么版本的OS X?尝试重新启动我的计算机,但仍然出现相同的错误。我正在运行OSX 10.9.2hmm。。。我认为这肯定与pycurl无法找到更新的动态库有关。但是没有更多的信息很难知道。是您自己安装的pycurl,还是随python一起安装的?我还将尝试删除并重新安装pycurl(例如,使用pip
)。如果pip仍然不起作用,我会尝试遵循这些。我可以提供哪些信息帮助您?我真的很想弄清楚这件事。我认为这与我在哪里安装pycurl以及pycharm在哪里寻找有关。我如何找到它,然后改变它?