我想从HTML文件的两个html div中获取一些文本。 经过一些搜索后,我决定使用HTMLAgility Pack来做这件事。 我写了这段代码:
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(result);
HtmlNode node = doc.DocumentNode.SelectSingleNode("//*div[@class='item']");
string value = node.InnerText;
'result'是我的文件内容。 但我得到了这个例外:'表达式必须评估为节点集'
这是mt文件的一些内容:
<div class="Clear" style="height:15px;"></div>
<div class='Container Select' id="Container_1">
<div class='Item'><div class='Part Lable'>موضوع : </div><div class='Part ...
答案 0 :(得分:0)
尝试
"//*/div[@class='item']"
或只是
"//div[@class='item']"
答案 1 :(得分:0)
你尝试过使用XPath吗? 例如,如果我想在我的示例中找到一个节点,我将执行以下操作
string xpath = null;
XmlNode configNode = configDom.DocumentElement;
// collect selected nodes in node list
XmlNodeList nodeList =
configNode.SelectNodes(@"//*[@status='checked']");
在您的情况下,您将执行以下操作
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(result);
HtmlNode node = doc.DocumentNode.SelectSingleNode("//*/div[@class='item']");
string value = node.InnerText;