从 urllib2 导入请求 - 无法导入名称请求

Posted

技术标签:

【中文标题】从 urllib2 导入请求 - 无法导入名称请求【英文标题】:from urllib2 import request - cannot import name request 【发布时间】:2015-06-11 23:44:34 【问题描述】:

所以我正在尝试编写一个程序,我需要名为 requests 的模块,因为我使用的是 python 版本 2.7.9。

我想使用代码:

from urllib2 import request

会做这项工作。然而我得到以下错误:

Traceback (most recent call last):
  File "C:\Python27\NLTKHoofdstuk3.py", line 5, in <module>
    from urllib2 import request
ImportError: cannot import name request

我不明白,因为我的 urllib2 完全在 Python 上工作,并且模块请求应该在模块 urllib2 中(当我键入“i​​mport urllib2”时我也没有收到错误)

那么有谁知道为什么我的模块请求不起作用但我的模块 urllib2 是

【问题讨论】:

您将 Python 3 与 Python 2 混淆了。 python 3 是否只有 urllib2 并添加了模块请求? Python 3 没有urllib2 模块,但它肯定在urllib 中有一个request 模块。 并且 python 2.7 有一个 urllib2 没有添加请求模块?如果是这样,我需要下载什么才能在 python 2.7 中使用请求模块?或者你会建议下载 python 3 伙计们在 2.7 中有一个 urllib2 的请求方法 【参考方案1】:

尝试使用

from urllib2 import Request

而不是

from urllib2 import request

查看官方documentation

【讨论】:

我仍然得到相同的错误:回溯(最近一次调用最后一次):文件“”,第 1 行,在 from urllib import Request ImportError: cannot import name Request @NielsGorsel 它是 Request 和 urllib2 中的 R【参考方案2】:

使用

import urllib;

然后

urllib.urllopen();

对于Python 2.7,您不需要import 请求。

【讨论】:

【参考方案3】:

尝试使用:

import urllib2

并使用urllib2 代替urllib.request

查看文档https://docs.python.org/2/library/urllib2.html#urllib2.urlopen 可能会有所帮助。

【讨论】:

【参考方案4】:

我正在使用 Python 2.7 并遇到了同样的问题。在使用urllib3 而不是urlliburllib2 后,我能够解决它。

这是在 Python 2.7 中使用 urllib3 的示例屏幕截图: jupyter_Screenshot_for_urllib3

【讨论】:

以上是关于从 urllib2 导入请求 - 无法导入名称请求的主要内容,如果未能解决你的问题,请参考以下文章

ImportError:无法导入名称 NullHandler

导入错误:没有模块名称 urllib2

无法导入名称 import_by_path

当我将 Swagger API 导入 Postman 时,所有请求名称在 Postman GUI 中最终都是空白的

无法导入已安装的模块

导入sklearn时Python出错..无法从'joblib.logger'导入名称'Logger'