如何使用 HtmlAgilityPack 从网站获取单个图像?

How can i get a single image from a website using HtmlAgilityPack?

我正在尝试使用 HtmlAgilityPack 抓取一家商店,我得到了产品名称、价格、库存,但我缺少图像。我搜索了如何使用 Agility Pack 获取图像,但我发现的只是如何从网站获取所有图像,而不仅仅是一个图像。 我尝试选择图像所在的单个节点,执行如下操作: var imgNode = doc.DocumentNode.SelectSingleNode("//div[@class = 'featured']"); 通过这样做,imgNode 值等于整个 img id html 元素,但我只想从 src 值获取当前源。 我试图从商店中抓取的 link 是这样的:“https://www.fullh4rd.com.ar/prod/18381/monitor-27-gigabyte-g27fc-gaming-curvo-ips-165hz-hdmi-dp” 感谢您的宝贵时间^^

html 元素中的 src 项目,当仅被视为一个属性时,可以通过其属性 属性.

检索

但是上面的代码 select 是一个 div,所以一旦您 select 子 img 元素,您就可以访问它的来源:

var imgContainer = document.DocumentNode.SelectSingleNode("//div[@class = 'featured']");

var imgNode = imgContainer.SelectSingleNode("//img");

var src = imgNode.Attributes["src"].Value;

或者直接使用 id:

查找 img
var imgContainer = document.DocumentNode.SelectSingleNode("//img[@id = 'mainpic']");
Console.WriteLine(imgContainer.Attributes["src"].Value);