在Python環境下寫一個HTTP客戶端,發送POST請求,同時上傳表單數據和文件,我們可以使用Requests模塊來實現。代碼如下:
data = {
'name': 'nginx'
}
files = {'file': open("abc.csv", 'rb')}
response = requests.post(url, data=data, files=files)
如果需要用戶權限,可以使用requests.session()客戶端,先登錄獲得cookies,然後再發送post請求。
該方法只適用於上傳小文件,上傳大文件的時候就需要用到流式上傳,否則佔用主機內存太多。參考文檔http://docs.python-requests.org/zh_CN/latest/user/advanced.html#advanced。
參考文檔:
Requests官方文檔