需要为Python 3.5.1安装urllib2


100

我正在为Mac运行Python 3.5.1。我想使用urllib2模块。我尝试安装它,但被告知它已被拆分成Python 3 urllib.requesturllib.error用于Python 3。

我的命令(现在不在框架bin目录中运行,因为它不在我的路径中):

sudo ./pip3 install urllib.request

返回此:

Could not find a version that satisfies the requirement urllib.request (from versions: )
No matching distribution found for urllib.request

在尝试一口气安装之前,我遇到了同样的错误urllib2


2
您不能仅导入urllib.requestPython程序吗?
michaelpri

3
urllib.request是标准库的一部分,不需要安装。
Daniel Roseman


urllib的是性病库的一部分,但它包含了只有解析包,我没能找到该请求....
德文德拉·巴特

Answers:


169

警告:安全性研究发现 PyPI上多个中毒的软件包,包括名为的软件包urllib,安装后会“打电话回家”。如果您pip install urllib在2017年6月之后使用了一段时间,请尽快删除该软件包

您不能,也不需要。

urllib2是Python 2中包含的库的名称。您可以改用Python 3中包含的urllib.request。该urllib.request库的工作方式与urllib2在Python 2中的工作方式相同。由于已经包含该库,因此您无需安装它。

如果您正在遵循的教程告诉您使用方法,urllib2那么您会发现遇到更多问题。您的教程是针对Python 2编写的,而不是针对Python 3编写的。找到其他教程,或者安装Python 2.7并继续该版本的教程。您会发现urllib2该版本随附。

或者,安装该requests以获得更高级别且更易于使用的API。它可以在Python 2和3上使用。


24
谢谢,然后我可以使用:import urllib.request as urllib2
MewX

所以pip不会针对恶意软件进行管理?
igor

3
@igor:pip是一种命令行工具,可以从任何地方发现和加载程序包。PyPI.org,默认的包索引pip将被使用,未被审核。Python Software Foundation是一个由志愿者运营的组织,甚至不可能开始减轻涉及的代码量。
马丁·彼得斯

谢谢你的抬起头
乙朵

28

根据文档

注意 urllib2模块已拆分为Python 3中名为urllib.request和的多个模块urllib.error。将源转换为Python 3时,2to3工具将自动适应导入。

因此,似乎无法做您想做的事,但您可以使用中的适当python3函数urllib.request


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.