gpt4 book ai didi

python - 将 urllib2 python 代码转换为使用 urllib 模块

转载 作者:太空宇宙 更新时间:2023-11-04 04:21:06 25 4
gpt4 key购买 nike

我有以下使用 urllib2 模块运行的代码,但我需要升级到 Python 3.x,这会阻止使用 urllib2。我知道它分为 urllib.request 和 urllib.error,但在阅读文档和其他相关问题后,我正在努力将以下代码转换为使用 urllib 模块。非常感谢任何帮助。

  opener = urllib2.build_opener(urllib2.HTTPHandler)
request = urllib2.Request(url=event['ResponseURL'], data=data)
request.add_header('Content-Type', '')
request.get_method = lambda: 'PUT'
url = opener.open(request)

最佳答案

您只需将 urllib2 替换为 urllib.request。您没有使用任何已移至其他 urllib.* 模块的内容:

import urllib.request

opener = urllib.request.build_opener(urllib.request.HTTPHandler)
request = urllib.request.Request(url=event['ResponseURL'], data=data)
request.add_header('Content-Type', '')
request.get_method = lambda: 'PUT'
url = opener.open(request)

您始终可以运行 2to3 command-line tool在你的 Python 2 代码上,看看它做了什么改变;默认操作是以统一差异格式在 stdout 上输出更改。

urllib 修复器还会在顶部为 urllib.errorurllib.parse 添加导入,因为它知道该代码导入的 urllib2 可能 需要 3 个 urllib.* 模块中的任何一个;在转换模块中的其余 urllib2 引用后,仅将导入限制为实际需要的导入是不够聪明的。

关于python - 将 urllib2 python 代码转换为使用 urllib 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54479600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com