首页 > 解决方案 > 在 Python 中使用 Requests 模块时遇到问题

问题描述

我正在尝试使用请求将 JSON 数据发布到 HTTP 端点,但我现在遇到了这个奇怪的错误(我之前使用过没有问题)。

非常感谢任何故障排除。

编码:

req = requests.post(HTTP_ENDPOINT, data=json.dumps(data))

输出:

AttributeError:模块“请求”没有属性“发布”

标签: pythonpython-requestshttp-post

解决方案


如果你的文件夹中有一个名为 requests.py 的文件,那么 python 会将它作为一个模块导入到你使用 pip 安装的 requests 包之前。

这就是为什么它说请求没有属性'post'。如果您在 requests.py 中定义一个变量,如下所示:

# requests.py
post = lambda *arg: print('unitended concequence')

您可能会看到它打印出该声明,而不是抱怨发布请求不包含帖子。解决方案是重命名您的文件,这样它们就不会影响您要导入的包。例如将 requests.py 更改为 my_requests.py。


推荐阅读