如何从 XML 文件下载图像?

How do I download images from an XML file?

我重建一个网站是为了好玩(但也让它变得更好),我想批量下载网站上的图像。我找到了一个 XML 文件,其中包含图像的所有链接(或至少其中的一些链接)。 Here's the file.

有没有办法使用 Windows 程序或某种脚本下载此 XML 中的所有图像?非常感谢。

你需要做三件事:

  1. Extract/create 来自 xml 文件的 url
    • 使用文本编辑器的查找和替换(sublime texts ctrl-shift-g 特别棒)
  2. 使用http客户端下载一个url
    • 使用wget or see this stack overflow for further options or use a browser extension such as DownloadThemAll (see for example this guide)
  3. 扩展此方法以遍历所有 url:
    • 如果您使用 DownloadThemAll 就很简单,如果您使用批处理文件,请参阅 this stack overflow,或者考虑使用 powerhsell。

此外,您可以安装其他编程语言,例如 python 或 ruby,并使用它们拥有的 http 库。设置时间更长,但一旦使用此类语言设置,语法可能会更容易。

更新: 如果您在 xml 文档上使用搜索和替换来创建包含如下链接列表的 html 页面:

<body>  
  <a href="http://gkvrozenburg-voorne.nl/images/45.jpg" download>link</a>
  <a href="http://gkvrozenburg-voorne.nl/images/IMG_3026.jpg" download>link</a>
  <a href="http://gkvrozenburg-voorne.nl/images/IMG_3037.jpg" download>link</a>
  <a href="http://gkvrozenburg-voorne.nl/images/IMG_3039.jpg" download>link</a>
  <a href="http://gkvrozenburg-voorne.nl/images/IMG_3047.jpg" download>link</a>
</body>

然后您可以在浏览器中打开它,启动浏览器 javascript 控制台并输入以下内容:

var anchors = document.getElementsByTagName('a')
for (var i = 0; i < anchors.length; i++) {
  anchors[i].click()
}

这将下载所有图像。