Leider nochmal eine XML Frage

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
joergimann
User
Beiträge: 14
Registriert: Montag 29. September 2014, 20:49

Hallo und schönen guten Morgen.
Ich habe per Online Request ein XML File "hochgeladen und auch einen gültigen recall bekommen. (auf der Seite http://www.hurl.it)
Ich habe POST Request ausgeählt und bei den Parametern XML und dann das XML als Text eingefügt (leider geht mein Screenshot nicht)

Nun wollte ich dies in Python nachbauen. Ich habe folgenden Code gebaut:

Import requests
meine_xml=<.........>
r = requests.get('https://......., params=meine_xml'))

Leider kommt immer die Meldung ich kein XML habe. Wird die Variable meine_xml gar nicht mitgeschickt?
Bzw. wir gebe ich den params mit das es sich um eine XML handelt (wir im screeenshot)

Für eine Hilfe wäre ich dankbar. Vielleicht muss ich es auch mit urllib machen? - Könnte da sein?
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

joergimann hat geschrieben: Ich habe POST Request ausgeählt [...]

[...]

r = requests.get('https://......., params=meine_xml'))
So als spontane Idee: get ist nicht POST.
joergimann
User
Beiträge: 14
Registriert: Montag 29. September 2014, 20:49

Oh sorry.....

Auch mit requests.post kommt leider XML wurde nicht übergeben.
sebastian0202
User
Beiträge: 168
Registriert: Montag 9. Mai 2016, 09:14
Wohnort: Berlin

Hallo,



also wenn der obige Auszug deinem Quellcode 1 zu enstpricht wüsste ich einen Fehler.
Du hast hier einen String -> 'https://......., params=meine_xml'
meine_xml wird nicht mit der Variable ersetzt die du eine Zeile darüber erzeugst.
r = requests.get('https://.......', params=meine_xml)
So sieht es meiner Meinung nach besser aus, ohne aber requests.get() genau zu kennen.
Wo kommt eigentlich deine zweite Klammer her?

Code: Alles auswählen

[...]
meine_xml = <......>
r = requests.get('https://.......', params=meine_xml)
[...]
Sirius3
User
Beiträge: 17750
Registriert: Sonntag 21. Oktober 2012, 17:20

@joergimann: sollte das XML als Daten übertragen werden, so wäre requests.post('https://.......', data=meine_xml) das richtige.
Antworten