Использую htmlagilitypack. Есть html код
<div class="ui-image-viewer-thumb-wrap" data-role="thumbWrap">
<a class="ui-image-viewer-thumb-frame" data-role="thumbFrame" href="javascript:void(0);" data-spm-anchor-id="a2g0v.12010108.1000017.1">
<img alt="Лидер продаж" title="Лидер продаж" src="https://ae01.alicdn.com/kf/HTB13IwpQFXXXXXgaXXXq6xXFXXXu/250-300-2-Pad.jpg_640x640.jpg" data-role="thumb"
style="max-width: 500px; max-height: 500px;" data-spm-anchor-id="a2g0v.12010108.1000017.i0.5703a98yCgFir">
</a>
</div>
Как из него можно получить ссылку на картинку (src)?
PS:
id("magnifier")/div[@class="ui-image-viewer-thumb-wrap"]/a[@class="ui-image-viewer-thumb-frame"]/img[1]/@src
не катит(.
Я думаю тут будет правильней что то вроде такого:
var imgNode = doc.DocumentNode.SelectSingleNode("/div[@class='ui-image-viewer-thumb-wrap']/a/img");
var url = imgNode.GetAttributeValue("src", null);
div-а мы берем первый подходящий a и в нем уже забираем первый img. В итоге у нас в imgNode будет элемент картинки.src. Результатом будет string значение нашей ссылки.Если у вас html в точности как вы указали, то данный вариант будет вполне неплохо работать.
С использованием XPathNavigator ваше выражение успешно отрабатывает:
var htmlDocument = new HtmlDocument();
htmlDocument.LoadHtml(@"
<div class='ui-image-viewer-thumb-wrap' data-role='thumbWrap'>
<a class='ui-image-viewer-thumb-frame' data-role='thumbFrame' href='javascript:void(0);' data-spm-anchor-id='a2g0v.12010108.1000017.1'>
<img alt='Лидер продаж' title='Лидер продаж' src='https://ae01.alicdn.com/kf/HTB13IwpQFXXXXXgaXXXq6xXFXXXu/250-300-2-Pad.jpg_640x640.jpg' data-role='thumb'
style='max-width: 500px; max-height: 500px;' data-spm-anchor-id='a2g0v.12010108.1000017.i0.5703a98yCgFir'>
</a>
</div>");
var path = "/div[@class='ui-image-viewer-thumb-wrap']/a[@class='ui-image-viewer-thumb-frame']/img[1]/@src";
var xpathNavigator = htmlDocument.CreateNavigator();
var srcValue = xpathNavigator.SelectSingleNode(path).Value;
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости