Python 3.2 无法导入 urllib2(ImportError: 没有名为 urllib2 的模块)

87 投票
3 回答
186694 浏览
提问于 2025-04-16 20:56

我在使用Windows系统时,遇到了这个错误:

ImportError: No module named urllib2

我觉得这个链接是针对Linux系统的解决办法。但是在Windows上该怎么设置呢?

我使用的是Python 3.2,但在Lib文件夹里找不到urllib2这个模块。

3 个回答

5
    import urllib2

错误追踪(最近的调用记录):

文件 "", 第 1 行,在

    import urllib2

导入错误:没有名为 'urllib2' 的模块

所以 urllib2 已经被新的包替代了:urllib.request。

这里有个 PEP 链接(Python 改进提案)

http://www.python.org/dev/peps/pep-3108/#urllib-package

所以现在你可以用 urllib.request 代替 urllib2,然后这样使用它:

    >>>import urllib.request

    >>>urllib.request.urlopen('http://www.placementyogi.com')

原始链接:http://placementyogi.com/articles/python/importerror-no-module-named-urllib2-in-python-3-x

24

PYTHON 3

import urllib.request

wp = urllib.request.urlopen("http://example.com")

pw = wp.read()

print(pw)

PYTHON 2

import urllib

 import sys

 wp = urllib.urlopen("http://example.com")

 for line in wp:

     sys.stdout.write(line)

我已经在各自的版本中测试过这两个代码了。

147

在Python 3中,urllib2被合并到了urllib里。你可以看看另一个Stack Overflow的问题urllib的PEP 3108

如果你想让Python 2的代码在Python 3中运行:

try:
    import urllib.request as urllib2
except ImportError:
    import urllib2

撰写回答