Seite 1 von 1

Leider nochmal eine XML Frage

Verfasst: Mittwoch 8. Februar 2017, 09:09
von joergimann
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?

Re: Leider nochmal eine XML Frage

Verfasst: Mittwoch 8. Februar 2017, 09:25
von /me
joergimann hat geschrieben: Ich habe POST Request ausgeählt [...]

[...]

r = requests.get('https://......., params=meine_xml'))
So als spontane Idee: get ist nicht POST.

Re: Leider nochmal eine XML Frage

Verfasst: Mittwoch 8. Februar 2017, 12:03
von joergimann
Oh sorry.....

Auch mit requests.post kommt leider XML wurde nicht übergeben.

Re: Leider nochmal eine XML Frage

Verfasst: Mittwoch 8. Februar 2017, 12:35
von sebastian0202
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)
[...]

Re: Leider nochmal eine XML Frage

Verfasst: Mittwoch 8. Februar 2017, 13:25
von Sirius3
@joergimann: sollte das XML als Daten übertragen werden, so wäre requests.post('https://.......', data=meine_xml) das richtige.