HtmlAgilityPackを使用してフレームソースを取得する


質問

私はすべてのiFrameのソースURLをHTML文書で取得しようとしています。私はxpathとHtmlAgilityPackを使用してみました - しかし、私はソースのリストを取得していないようです。

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

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

私のxpathは間違っていますか?ありがとう!

受け入れられた回答

実際にはこのopensource 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);
}

人気のある回答

ifarme属性を持ってい@src 。したがって、XPathは//iframe/@src必要があります。それはすべてのiframe @srcを選択します。





ライセンスを受けた: CC-BY-SA
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ