对字符串传入的字典参数进行urlencode编码,就需要用到两个方法urlencode和quote
urlencode方法传字典参数
from urllib.parse import urlencode, quote, unquote
# urlencode方法参数是字典
body = {
"content": "呃呃呃",
"charsetSelect": "utf-8",
"en": "UrlEncode编码"
}
print(urlencode(body))
quote传字符串参数
# quote方法参数是字符串
print(quote("上海-悠悠"))
url = "http://www.example.com/?a=问问为&b=同人文"
print(quote(url))
======================================================
import requests
from urllib.parse import urlencode, quote, unquote
url = "http://www.example.com/"
par = {
"a": "问问",
"b": "嗯嗯"
}
body = {
"content": "嗯嗯",
"charsetSelect": "utf-8",
"en": "UrlEncode编码"
}
r = requests.post(url, params=par, data=body)
print(r.url)
print(unquote(r.url))