温馨提示×

Python3中urlencode和urldecode的用法详解

小云
146
2023-08-09 14:22:58
栏目: 编程语言

在Python3中,urllib.parse模块提供了urlencodeparse_qs函数,用于URL编码和解码。

  1. urlencode函数用于将字典或包含键值对的元组列表编码为URL查询字符串。它的用法如下:
from urllib.parse import urlencode
params = {
'name': 'John Doe',
'age': 30,
'city': 'New York'
}
query_string = urlencode(params)
print(query_string)

输出结果为:name=John+Doe&age=30&city=New+York

  1. parse_qs函数用于将URL查询字符串解码为字典。它的用法如下:
from urllib.parse import parse_qs
query_string = 'name=John+Doe&age=30&city=New+York'
params = parse_qs(query_string)
print(params)

输出结果为:{'name': ['John Doe'], 'age': ['30'], 'city': ['New York']}

注意:parse_qs函数返回的值是一个字典,其中每个键对应的值是一个列表。如果你只想获取单个值,可以使用params['name'][0]来获取。如果URL查询字符串中有重复的键,parse_qs函数会将其作为列表的元素。

另外,如果你想将URL编码为完整的URL,包括协议、域名、路径和查询字符串,可以使用urlunparse函数。如果你想将完整的URL解析为各个部分,可以使用urlparse函数。这两个函数也在urllib.parse模块中提供。

总结:

  • urlencode函数用于将字典或包含键值对的元组列表编码为URL查询字符串。

  • parse_qs函数用于将URL查询字符串解码为字典。

  • urlunparse函数用于将URL编码为完整的URL。

  • urlparse函数用于将完整的URL解析为各个部分。

0