Python 3 urlib library can help us to access network, in this tutorial, we will introduce how to send our data to server with http post method. You can learn how to do by following our tutorial.
To send a data to sever with post method, you have three questions to solved.
How to build our data to send?
To send our data, we should format our data and build it can be sent.
We shoud build our data to be a dictionary
def buildData(file_name, image_name, page, size): data = {'filename':file_name, 'imagename':image_name, 'page': page, 'size':size} return data
In this function, we send file_name, image_name, page, size. We build them to be a python dictionary.
How to send our data to sever?
To send our data, we shoud encode our data firstly.
post_data = urllib.parse.urlencode(data).encode('utf-8')
Build an opener to send data
opener = getRequestOpener()
Notice: getRequestOpener() function is defined in here.
Best Practice to Python OpenDirector Add HTTP Request Header – Python Web Crawler Tutorial
Get http response to check our data is sent successful or not
try: #ignore ssl crawl_response = opener.open(url, data= post_data, timeout = 30) except Exception as e: print(e) crawl_response = None if not crawl_response: pass crawl_response_code = crawl_response.getcode() if crawl_response_code == 200: content = getcontent(crawl_response)
Notice: getcontent() function is defined in here.
A Simple Guide to Get String Content from HTTP Response Header – Python Web Crawler Tutorial
Then we can anlysis content to check our data is sent to server successful or not.