从维基媒体下载图像
Download image from Wikimedia
我阅读了一些文档,经过一些研究,我不确定是否有简单的方法可以做到这一点。
我正在使用 MusicBrainz 获取艺术家的图像。产生这个 URL
https://commons.wikimedia.org/wiki/File:Michael_Jackson_in_1988.jpg
我想下载图片(我已经制作好)但我不知道正确的步骤是什么?
我读过几本 link,但似乎都过时了,包括:
Download image from the site in .NET/C#
这并没有回答我的问题,因为我已经有了下载图像的方法。在这种情况下,我所追求的是一种使用上面的 link 获取图像 URL 的方法,其中包含下载 links.
我确实读过一个针对 API 的 link 但同样是过时的并且准备好帮助页面没有提到这个 API (所以它可能是第三方) .
我有下载图片的所有东西,它只是得到正确的 URL,可以在我上面发布的 link 上找到,但我不知道如何提取 URL ?
您可以使用 Html Agility Pack 获取 html 页面中的所有 <a href
元素,然后查找具有图像类型扩展名的元素。
var document= new HtmlWeb().Load("https://commons.wikimedia.org/wiki/File:Michael_Jackson_in_1988.jpg");
var allhrefs = document.DocumentElement.SelectNodes("//a[@href]");
我确定它们共享一个共同的结构,所以我会让你弄清楚。快速浏览一下,第一个 <a href
似乎指向原始图像。
var imagelink = allhrefs.FirstOrDefault();
编辑:如果您想更加小心,可以通过查找 class='fullImageLink'
div 和 id='file'
来过滤节点。这似乎将 <a href
托管到原始图像。
我阅读了一些文档,经过一些研究,我不确定是否有简单的方法可以做到这一点。
我正在使用 MusicBrainz 获取艺术家的图像。产生这个 URL
https://commons.wikimedia.org/wiki/File:Michael_Jackson_in_1988.jpg
我想下载图片(我已经制作好)但我不知道正确的步骤是什么?
我读过几本 link,但似乎都过时了,包括:
Download image from the site in .NET/C#
这并没有回答我的问题,因为我已经有了下载图像的方法。在这种情况下,我所追求的是一种使用上面的 link 获取图像 URL 的方法,其中包含下载 links.
我确实读过一个针对 API 的 link 但同样是过时的并且准备好帮助页面没有提到这个 API (所以它可能是第三方) .
我有下载图片的所有东西,它只是得到正确的 URL,可以在我上面发布的 link 上找到,但我不知道如何提取 URL ?
您可以使用 Html Agility Pack 获取 html 页面中的所有 <a href
元素,然后查找具有图像类型扩展名的元素。
var document= new HtmlWeb().Load("https://commons.wikimedia.org/wiki/File:Michael_Jackson_in_1988.jpg");
var allhrefs = document.DocumentElement.SelectNodes("//a[@href]");
我确定它们共享一个共同的结构,所以我会让你弄清楚。快速浏览一下,第一个 <a href
似乎指向原始图像。
var imagelink = allhrefs.FirstOrDefault();
编辑:如果您想更加小心,可以通过查找 class='fullImageLink'
div 和 id='file'
来过滤节点。这似乎将 <a href
托管到原始图像。