确定某些文本来自网站的位置

时间:2016-09-15 21:26:42

标签: python html bash

我尝试编写一个bash脚本,从National Geographic下载当天的照片,将其设置为桌面背景,并将页面上找到的图片描述放在文本文件中在桌面上。 (我知道那里有脚本可以做到这一点,但NG最近更改了他们的POTD页面,他们不再工作了。)

我已经将图片下载并成为桌面背景,但我仍然不知道如何下载图片的完整描述(网站上图片下方的图片,而不是较短的版本)在标题中的元数据中)。麻烦的是,我的脚本使用curl(或wget就此问题)下载的页面中没有显示说明。但是,当浏览器中的视图显然存在时。

如果描述文本不在html文件中,它来自何处?我如何下载/解析描述,最好使用bash或python?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

隐藏在国家地理页面的html中的是以下属性:

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

您寻找的标题位于该URL指向的JSON文件中。例如,在今天的JSON文件版本中,我们发现:

"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"