2017-09-12 52 views
1

我想上傳文件到服務器使用python。這意味着在這種情況下,當我在瀏覽器中編寫http://example.com/files/時,我希望在文件列表中看到de.txt。我應該如何改變這個腳本才能工作?當我運行它時,python shell什麼也沒有寫,只有>>>。上傳文件到服務器不工作在python

在此先感謝!

import requests 

url = 'http://example.com/files/' 
user, password = 'ex', 'ample' 

files = {'upload_file': open(r'C:\Users\example\Desktop\code\de.txt','rb')} 

r = requests.post(url, auth=(user, password), files=files) 
+0

的可能重複https://stackoverflow.com/questions/22567306/python-requests-file-upload – amrit

回答

0

編寫跨網絡

import requests 
from requests.auth import HTTPBasicAuth 

url = 'http://example.com/files/' 
user, password = 'ex', 'ample' 

files = {'file': ('de.txt', open('de.txt', 'rb'), 'multipart/form-data', {'Expires': '0'})} 

r = requests.post(url, auth=HTTPBasicAuth(user, password), files=files) 

文件供大家參考使用Python Request documentation

+0

ValueError異常:不能編碼不是2元組的對象 – Marci

+0

還有其他的東西會導致這個錯誤。你可以分享你的代碼 –

+0

我覺得你得到,因爲'AUTH =(用戶名,密碼)'這句法從StringIO的進口StringIO的 緩衝= StringIO的() 網址 –

相關問題