Betrachten Sie eine URL wie https://groups.yahoo.com/api/v1/groups/concatenative/messages/300. Dies ist eine application/json
Antwort:Wie bekomme ich die rohe Seitenquelle?
Ich mag würde die JSON von Selen zuzugreifen. (Ich benutze Selenium, weil ich auf private Gruppen zugreifen muss, und ich wollte nicht herausfinden, wie man sich über Mechanicalsoup oder etwas Ähnliches einloggt.) Aber die Seitenquelle zu bekommen gibt mir die Art, wie der Browser ist präsentiert die JSON, nicht die JSON selbst:
>>> self.br.driver.page_source
'<html xmlns="http://www.w3.org/1999/xhtml"><head><link title="Wrap Long Lines" href="resource://gre-resources/plaintext.css" type="text/css" rel="alternate stylesheet" /></head><body><pre>{"ygPerms":{"resourceCapabilityList":[{"resourceType":"GROUP","capabilities":[{"name":"READ"},{"name":"JOIN"}]},{"resourceType":"PHOTO","capabilities":[]},{"resourceType":"FILE","capabilities":[]},{"resource ...
Beachten Sie, dass die JSON in einigen HTML und Pre-Elemente gewickelt ist.
Wie kann ich nur die JSON, direkt? Es scheint Hacky zu sein, den Inhalt der <pre>
in <body>
zu bekommen, da ich nicht weiß, wie der Browser diese JSON-Antwort in Zukunft darstellen soll.
Vielen Dank dafür! Ich habe gesucht, wie man JS- und CSS-Dateien in C# vom ChromeDriver herunterlädt und diese Methode verwendet! Bei der Änderung wurde nur sichergestellt, dass die AsynchronousJavaScript-Zeit auf 5 Sekunden gesetzt wurde, da andernfalls nach null Sekunden ein Timeout auftritt. – Qjimbo