我嘗試使用HtmlAgilityPack從html解析圖像URL。在html doc中我有img標籤:
<a class="css_foto" href="" title="Fotka: MyKe015">
<span>
<img src="http://213.215.107.125/fotky/1358/93/v_13589304.jpg?v=6"
width="176" height="216" alt="Fotka: MyKe015" />
</span>
</a>
我需要從這個img標籤獲取atribute src。我需要這個: http : //213.215.107.125/fotky/1358/93/v_13589304.jpg?v = 6。
我知道這個:
任何進步,我嘗試了很多方法,但沒有什麼工作好。
最後我試試這個:
List<string> src;
var req = (HttpWebRequest)WebRequest.Create("http://pokec.azet.sk/myke015");
req.Method = "GET";
using (WebResponse odpoved = req.GetResponse())
{
var htmlDoc = new HtmlAgilityPack.HtmlDocument();
htmlDoc.Load(odpoved.GetResponseStream());
var nodes = htmlDoc.DocumentNode.SelectNodes("//img[@src]");
src = new List<string>(nodes.Count);
if (nodes != null)
{
foreach (var node in nodes)
{
if (node.Id != null)
src.Add(node.Id);
}
}
}
您的XPath選擇img
節點,而不是屬於它們的src
屬性。
而不是(選擇具有src
屬性的所有圖像標籤):
var nodes = htmlDoc.DocumentNode.SelectNodes("//img[@src]");
使用此選項(選擇作為所有img
元素的子節點的src
屬性):
var nodes = htmlDoc.DocumentNode.SelectNodes("//img/@src");