2016-09-15 1 views
2

Ich versuche, ein Bash-Skript zu schreiben, das das Foto des Tages von National Geographic herunterlädt, es als den Desktop-Hintergrund einstellt und die Beschreibung des auf der Seite gefundenen Bildes in a Textdatei auf dem Desktop. (Ich bin mir bewusst, dass es Skripte gibt, die das tun, aber NG hat kürzlich ihre POTD-Seite geändert und sie funktionieren nicht mehr.)Ermitteln, wo bestimmter Text von der Website kommt

Ich habe das Bild zum Herunterladen bekommen und werde zum Desktop-Hintergrund, bin aber festgefahren um die vollständige Beschreibung des Bildes herunterzuladen (die unter dem Bild auf der Website gefundene, nicht die kürzere Version in den Metadaten in der Kopfzeile). Problem ist, die Beschreibung erscheint nicht auf der Seite, die mein Skript mit curl (oder wget für diese Angelegenheit) herunterlädt. Es ist offensichtlich, wenn Sie im Browser anzeigen.

Woher kommt der Beschreibungstext, wenn er nicht in der HTML-Datei enthalten ist? Wie kann ich die Beschreibung herunterladen/parsen, vorzugsweise mit bash oder python?

Danke für jede Hilfe.

Antwort

1

im html Buried für die National Geographic Seite ist das folgende Attribut:

data-platform-endpoint="http://www.nationalgeographic.com/photography/photo-of-the-day/_jcr_content/.gallery.2016-09.json" 

Die Beschriftung, die Sie in der JSON-Datei suchen, ist, dass diese URL auf. In der heutigen Version dieser JSON-Datei finden wir zum Beispiel:

"caption":"<p>A giraffe leads a herd of zebras as the animals stamede from a threat unseen. Your Shot photographer Mohammed AlNaser captured this image in Tanzania\u2019s Serengeti National Park. The zebras \u201cemerged from nowhere,\u201d AlNaser writes. \u201cThey were obviously drinking water and something scared them and created a few seconds of a chaos.\u201d<\/p>\n" 
+0

Super! Vielen Dank. Wenn es dir nichts ausmacht, mich zu fragen, wie hast du das herausgefunden? – sc8ing

+0

@ sc8ing Wenn die Seite "National Geographic" in Chromium geöffnet ist, klicken Sie mit der rechten Maustaste auf den gewünschten Teil und wählen Sie "Inspect". Ein Panel mit den Entwicklertools wird geöffnet. Erkunden Sie dann ... Nachdem ich den vielversprechenden Link zu JSON-Daten gefunden hatte, lud ich ihn mit "wget" herunter, um zu verifizieren, dass er den Inhalt von Interesse hatte. – John1024

+0

Vielen Dank! – sc8ing

Verwandte Themen