Tools, FAQ, Tutorials:
Using urllib.request.Request Object
How to use the urllib.request.Request object to build more complex HTTP request?
✍: FYIcenter.com
The urllib.request.urlopen() function can take a
urllib.request.Request object to let you building more complex HTTP requests.
You can use the Request() constructor to build a Request object:
q = urllib.request.Request(url, data=None, headers={},
origin_req_host=None, unverifiable=False, method=None)
where:
url should be a string containing a valid URL.
data is request body as a binary string, file-like object, or iterable.
headers should be a dictionary of request headers.
Here is a Python example on how to build a complex HTTP POST request using a urllib.request.Request object:
>>> import urllib
>>> url = 'http://httpbin.org/post'
>>> form = {'user':'fyicenter', 'msg':'hello world!'}
>>> data = urllib.parse.urlencode(form)
>>> data = bytes(data,'utf8')
>>> headers = {'Referer':'http://dev.fyicenter.com'}
>>> req = urllib.request.Request(url,data,headers,method='POST')
>>> r = urllib.request.urlopen(req)
>>> b = r.read()
>>> print(b)
b'{\n "args": {}, \n "data": "", \n "files": {}, \n
"form": {\n "msg": "hello world!", \n "user": "fyicenter"\n }, \n
"headers": {\n "Accept-Encoding": "identity", \n
"Connection": "close", \n "Content-Length": "33", \n
"Content-Type": "application/x-www-form-urlencoded", \n
"Host": "httpbin.org", \n
"Referer": "http://dev.fyicenter.com", \n
"User-Agent": "Python-urllib/3.6"\n }, \n
"url": "http://httpbin.org/post"\n}\n'
⇒ urllib.request.Request Properties and Functions
⇐ Using urllib.parse.urlencode()
2018-09-13, ∼7153🔥, 0💬
Popular Posts:
How To Protect Special Characters in Query String in PHP? If you want to include special characters ...
How to build a PHP script to dump Azure AD 2.0 Authentication Response? If you are use the Azure-AD-...
How to add request body examples to my Azure API operation to make it more user friendly? If you hav...
How to read RSS validation errors at w3.org? If your RSS feed has errors, the RSS validator at w3.or...
How to pull NVIDIA CUDA Docker Image with the "docker image pull nvidia/cuda" command? If you are ru...