Ich versuche, Bild-URL von HTML mit HtmlAgilityPack zu analysieren. In html doc habe ich img tag:
<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>
Ich muss von diesem Img-Tag-Attribut src bekommen. Ich brauche das: http://213.215.107.125/fotky/1358/93/v_13589304.jpg?v=6.
Ich weiß das:
Irgendein Fortschritt, ich versuche viele Wege, aber nichts funktioniert gut.
Zuletzt versuche ich das:
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);
}
}
}
Ihr XPath wählt die img
Knoten aus, nicht die src
Attribute, die zu ihnen gehören.
Anstatt (alle Bild-Tags auszuwählen, die ein src
Attribut haben):
var nodes = htmlDoc.DocumentNode.SelectNodes("//img[@src]");
Verwenden Sie dies (wählen Sie die src
Attribute aus, die untergeordnete Knoten aller img
Elemente sind):
var nodes = htmlDoc.DocumentNode.SelectNodes("//img/@src");