Hochladen von mehrteiligen Formulardaten mit Anfragen in Python
In Python können Anfragen verwendet werden, um „multipart/form-data“-Anfragen zu senden, die häufig zum Hochladen von Dateien und zum Senden von Formulardaten an einen Webserver verwendet werden.
Senden einer Single Datei
Um eine Datei zu senden, verwenden Sie den Parameter „Dateien“. Der Wert von „files“ sollte ein Wörterbuch mit einem Dateipfad als Schlüssel und einem geöffneten Dateiobjekt oder einem Tupel als Wert sein. Zum Beispiel:
import requests with open('myfile.txt', 'rb') as f: files = {'myfile': f} response = requests.post('http://example.com/upload', files=files)
Formulardaten zusammen mit Dateien senden
Um Formulardaten zusätzlich zu Dateien zu senden, können Sie sowohl „Dateien“ als auch „Daten“ verwenden " Parameter. Der Parameter „data“ sollte ein Wörterbuch mit den Formulardaten-Schlüssel-Wert-Paaren sein.
import requests with open('myfile.txt', 'rb') as f: files = {'myfile': f} data = {'name': 'John Doe'} response = requests.post('http://example.com/upload', files=files, data=data)
Verwendung des Requests-Toolbelt für Multipart Support
Die Requests- Die Toolbelt-Bibliothek bietet eine erweiterte MultipartEncoder-Klasse, die den Prozess der Erstellung mehrteiliger Anforderungen vereinfacht. Die Felder können im gleichen Format wie der Parameter „Dateien“ definiert werden.
from requests_toolbelt.multipart.encoder import MultipartEncoder fields = { 'foo': 'bar', 'spam': ('spam.txt', open('spam.txt', 'rb'), 'text/plain'), } multipart_encoder = MultipartEncoder(fields=fields) response = requests.post('http://example.com/upload', data=multipart_encoder, headers={'Content-Type': multipart_encoder.content_type})
Das obige ist der detaillierte Inhalt vonWie lade ich mehrteilige Formulardaten mit der Requests-Bibliothek von Python hoch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!