Ich wollte eine Get-Anfrage in Python senden und sie als String zurückgeben. Ich möchte diese Saite irgendwann später als etwas verwenden. Gibt Python es auch standardmäßig im JSON-Format zurück?
req = requests.get(server, auth=('user',"pass"))
Taimoor Khan
Ich wollte eine Get-Anfrage in Python senden und sie als String zurückgeben. Ich möchte diese Saite irgendwann später als etwas verwenden. Gibt Python es auch standardmäßig im JSON-Format zurück?
req = requests.get(server, auth=('user',"pass"))
kakajan
Verwenden Python-Anfragen. Überprüfen Sie den Link. Es gibt Beispiele, wie Sie JSON aus der Antwort erhalten.
req = requests.get(server, auth=('user',"pass"))
req.json()
Wenn Sie es als Zeichenfolge möchten, verwenden Sie
req.text
aber was ist, wenn ich es als String möchte?
– Taimoor Khan
30. September 2015 um 20:46 Uhr
@TaimoorKhan verwenden req.text
es wird Ihnen im String-Format angezeigt, was von der Antwort zurückgegeben wurde
– Kakajan
30. September 2015 um 20:51 Uhr
Bitte beachten Sie Folgendes: type(req.json) ist die Klasse „dict“ type(req.json()) ist die Klasse „method“
– jshi
24. November 2018 um 7:51 Uhr
Anstatt die Antwort als Text abzurufen, ist es manchmal sinnvoller, sie in Bytes abzurufen, um sie später zu analysieren (.text
gibt eine entschlüsselte .content
So req.text == req.content.decode(req.encoding)
ist immer wahr).
req = requests.get(url)
req.content
Es ist besonders nützlich, Daten von Webseiten (in ost- oder südasiatischen Sprachen) zu lesen, die eine Nicht-UTF-8-Kodierung wie ISO-8859-1 verwenden und Sie einen Parser wie BeautifulSoup verwenden möchten.
BeautifulSoup(req.text) # <---- gibberish
BeautifulSoup(req.content) # <---- OK
Wenn Sie nach einem High-Level-Wrapper suchen, ist der
requests
Bibliothek PyPi ist anständig.– Kellen
30. September 2015 um 20:43 Uhr
Sprechen Sie über das Anfragemodul? Ich bin mir ziemlich sicher, dass get ein Response-Objekt zurückgibt, kein JSON oder einen String (aber Sie können beides vom Response-Objekt erhalten). Kannst du deinen Code posten?
– Multivac
30. September 2015 um 20:44 Uhr
Ich möchte es allerdings nicht in JSON, ich möchte nur einen String.
– Taimoor Khan
30. September 2015 um 20:45 Uhr
Code gepostet, ich bin mir nicht sicher, ob ich ihn als JSON, Objekt oder String bekomme. Ich hätte es gerne als Saite
– Taimoor Khan
30. September 2015 um 20:47 Uhr
Wie lautet die Antwort des Servers? Was macht
print(req)
gebe dir? Welche Ausgabe erhalten Sie und was ist Ihre? gewünscht Ausgang?– Kellen
30. September 2015 um 20:51 Uhr