fileupload mit pycurl (oder alternativen)

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
pycodein
User
Beiträge: 10
Registriert: Dienstag 12. Juni 2007, 15:48

hi,

Ich möchte gerne an ein php Upload Formular eine Datei und einen String (bla) mitsenden.
Hab mir ein paar Sachen angeschaut und bin über pycurl gestolpert.

Ich schaffe es nur leider nicht eine Datei hochzualden. Mit curl von der Konsole aus funktioniert es wunderbar:

Code: Alles auswählen

curl -F "file=@test.jpg" -F "bla=foo" http://localhost/php/uploader.php
das script:

Code: Alles auswählen

import pycurl

data = "bla=foo&file=@test.jpg"

c = pycurl.Curl()
c.setopt(c.URL, "http://localhost/php/uploader.php")
c.setopt(pycurl.POSTFIELDS, data) 
c.perform()
c.close()
sowie ich das verstehe gibt man ein @ wenn man angeben will das sich um eine Datei handelt.

Vielleicht kann mir jemand weiterhelfen? Alternativen sind auch willkommen, danke!
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Das geht irgendwie mit urllib2 und urllib2_file, leider finde ich grade kein Beispiel, weil die Original-Seite down ist.

Alternativ kanns tdu auch upload_test angucken, dort ist eine Funktion die die Form-Daten entsprechend enkodiert.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten