import urllib
data = urllib.parse.urlencode(params).encode('utf-8')
req = urllib.request.Request(url, data)
req.add_header('Content-Type', "application/x-www-form-urlencoded")
response = urllib.request.urlopen(req)
the_page = response.read().decode('utf-8')
print(the_page)
如果不做encode,会直接报错:POST data should be bytes or an iterable of bytes. It cannot be of type str.
如果不做decode,看到的都是assic码