如何使用c#从网页中提取图像链接?



我已经有了一些代码,但是假设我在windows窗体应用程序中有一个图片框,每当你点击它时,它都会更新为随机图像。

如何从网站(例如https://prnt.sc/hello1)提取图像

图片链接位于src=

<img class="no-click screenshot-image" src="https://image.prntscr.com/image/HENolz07Ty_AA4RwYdZVGg.png" crossorigin="anonymous" alt="Lightshot screenshot" id="screenshot-image" image-id="hello1">

我已经得到的代码是:

var image = "";
pictureBox1.ImageLocation = image;
pictureBox1.Update();

我怎么能(只有页面页面url)找到页面上的图像,并将其定义为'image'(最好使用c#)

使用AngleSharp获取页面HTML,然后使用各种选择器选择所需的元素。然后你可以使用HttpClient来下载文件

using AngleSharp;
using System.Net;
var config = Configuration.Default.WithDefaultLoader();
var address = "https://prnt.sc/hello1";
var context = BrowsingContext.New(config);
var document = await context.OpenAsync(address);
var imgSelector = "#screenshot-image";
var cells = document.QuerySelectorAll(imgSelector);
var imageAddress = cells.First().GetAttribute("src");
var client = new HttpClient();
var stream = await client.GetStreamAsync(imageAddress);
using (var fileStream = File.Create(AppDomain.CurrentDomain.BaseDirectory + @"img.png"))
{
stream.CopyTo(fileStream);
}