我使用的是Mac OSX 10.10.5,Python版本3.5.2和IDLE版本3.5.2。
我是Python的新手,我正在尝试在IDLE中使用urllib3模块。我已成功使用终端中的以下代码(返回数字200):
import urllib3
http = urllib3.PoolManager()
r = http.request('GET', 'http://httpbin.org/robots.txt')
r.status
但是相同的代码在IDLE中不起作用。在IDLE中,我收到以下错误:
Traceback (most recent call last):
File "/Users/faculty/Documents/Python/Scraping_v1_d1.py", line 1, in <module>
import urllib3
ImportError: No module named 'urllib3'
我还尝试在IDLE中使用以下其他代码:
import urllib3
htmlfile = urllib3.urlopen("http://google.com")
htmltext = htmlfile.read()
print (htmltext)
但我得到同样的错误。
在我的site-packages文件夹中,我有这些pip和urllib3文件夹:
1)pip
2)pip-9.0.1.dist-info
3)urllib3
4)urllib3-1.19.dist-info
我找到一个来源,建议我尝试执行以下操作:
import sys
sys.version
sys.path
这是终端的回复:
导入系统 内容sys.version &#39; 2.7.10(默认,2015年7月14日,19:46:27)\ n [GCC 4.2.1兼容的Apple LLVM 6.0(clang-600.0.39)]&#39; sys.path中 [&#39;&#39;,&#39; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip' ;,&#39; / System / Library / Frameworks / Python .framework / Versions / 2.7 / lib / python2.7&#39;,&#39; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin',&# 39; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac' ;,&#39; /System/Library/Frameworks/Python.framework/Versions/2.7/lib /python2.7/plat-mac/lib-scriptpackages' ;,&#39; /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python' ;,&#39; / System /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk' ;,&#39; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 / lib-old&#39;,&#39; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload' ;,&#39; / System / Library / Frameworks /Python.framework/Versions/2.7/Extras/lib/python/PyObjC' ;,&#39; /Library/Python/2.7/site-packages']
当我在IDLE中输入相同的代码时,没有任何反应(这是我得到的):
========= RESTART:/Users/faculty/Documents/Python/Scraping_v1_d1.py =========
我已经广泛搜索了网络和stackoverflow.com,但无法找到解决方案。有没有人有任何见解?
谢谢!
答案 0 :(得分:1)
与已显示的错误消息类似:
Mac上有两个Python版本。 Python 3.5和Python 2.7(默认情况下)。
IDLE过程取决于IDLE启动的python版本。因此,请确保您使用相同的Python版本(相同的IDLE)。 命令&#34; pip install urllib3&#34;仅适用于默认的python版本 - 这与IDLE中的python版本不同。
所以你只需要为Python3.5安装urllib3。