Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用HtmlAgilityPack获取iframe源_C#_.net_Xml_Xpath_Html Agility Pack - Fatal编程技术网

C# 使用HtmlAgilityPack获取iframe源

C# 使用HtmlAgilityPack获取iframe源,c#,.net,xml,xpath,html-agility-pack,C#,.net,Xml,Xpath,Html Agility Pack,我正在尝试获取html文档上的所有iFrame源URL。我尝试将HtmlAgilityPack与xpath结合使用,但我似乎没有得到一个源代码列表 HtmlAgilityPack.HtmlDocument myHtml= new HtmlDocument(); myHtml.LoadHtml(htmlString); foreach (HtmlNode framesrc) in myHtml.DocumentNode.SelectNodes("//iframe/src")) { src

我正在尝试获取html文档上的所有iFrame源URL。我尝试将HtmlAgilityPack与xpath结合使用,但我似乎没有得到一个源代码列表

HtmlAgilityPack.HtmlDocument myHtml= new HtmlDocument();
myHtml.LoadHtml(htmlString);

foreach (HtmlNode framesrc) in myHtml.DocumentNode.SelectNodes("//iframe/src"))
{
    srcCollection.add(framesrc);
}

我的xpath错了吗?

如果RME
具有属性
@src
。因此,您的XPath应该是
//iframe/@src
。它将选择所有
iframe

中的
@src
,实际上这个开源html解析器使用的查询如下所示:

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();

HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//iframe[@src]");


foreach(var node in nodes){
    HtmlAttribute attr = node.Attributes["src"];
    Console.WriteLine(attr.Value);
}

谢谢您知道如何从“HtmlNode framesrc”获取实际的src url吗?