导入urllib3在终端中工作,但不在IDLE

时间:2016-11-15 18:44:11

标签: python macos terminal python-idle urllib3

我使用的是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,但无法找到解决方案。有没有人有任何见解?

谢谢!

1 个答案:

答案 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。