使用Python 請求上傳檔案
嘗試使用Python 請求庫上傳檔案時,使用者可能會遇到檔案不存在的情況伺服器成功接收。這可能會令人沮喪,特別是當其他解決方案缺乏解決問題所需的見解時。
在描述的特定實例中,使用者透過使用表單提交來上傳檔案requests.post() 方法。儘管提供了正確的檔案名稱和內容,但伺服器無法識別上傳的檔案。相反,它報告上傳的文件為空。
解決此問題的關鍵在於正確指定 requests.post() 的檔案參數和資料參數方法。上傳檔案時,必須指定檔案名稱與其內容的對應。在本例中,使用者嘗試設定檔案和資料參數。
使用 Python 請求上傳檔案的正確方法是使用 files 參數來指定檔案的對應。以下是修復該問題的更新程式碼片段:
import requests url = 'http://nesssi.cacr.caltech.edu/cgi-bin/getmulticonedb_release2.cgi/post' files = {'upload_file': open('file.txt', 'rb')} values = {'DB': 'photcat', 'OUT': 'csv', 'SHORT': 'short'} r = requests.post(url, files=files, data=values)
透過將檔案映射放入 files 參數中,請求庫將自動處理多部分錶單提交,包括設定適當的標頭。
在某些情況下,使用者可能需要進一步控制檔案上傳過程。 Python 請求支援各種選項來自訂檔映射,包括提供檔案名稱和內容類型。對於更複雜的場景,例如從文件上傳整個 POST 正文,可以使用 data 參數而不使用 files 參數。
透過了解檔案和資料的正確用法參數,使用者可以使用Python請求成功上傳檔案。這使得文件上傳能夠無縫整合到自動化腳本和程式中。
以上是為什麼我的 Python 請求檔上傳失敗,如何修復?的詳細內容。更多資訊請關注PHP中文網其他相關文章!