0

我需要将HTMLDIV中元素的内容加载到变量中,以便可以将其打印到HTA文件中。但是,我在文档中有大约 70 个其他元素,我需要访问一个特定的元素。是否有访问具有特定属性的元素内容的快捷方式?DIV

这是我需要访问的元素示例

<div id='storytext'>
    <p>Story Text</p>
</div>
4

2 回答 2

2

我会使用HTML Agility Pack来提取内容。

代码看起来像这样

var htmlDocument = new HtmlDocument();
htmlDocument.Load(rawHTML); // string containing the HTML content

var storyDiv = htmlDocument.DocumentNode.Descendants("div").Any(x=>x.id == "storytext").FirstOrDefault();

从那里您可以使用storyDiv.InnerTextstoryDiv.InnerHTML获取内容。(不要忘记检查以确保storyDiv不为空)

于 2013-06-28T17:08:40.397 回答
1

因此,您正在以编程方式下载包含 DIV 的页面,并且想要获取该 DIV 的内容?

假设您可以下载页面,您可能想尝试Html Agility Pack。该库为您提供了一个类似于 XML 的 Linq API,用于处理较宽松的 HTML 页面标准。

如果您不想这样做,如果 DIV 标记非常可预测(仅具有id属性,或者具有特定顺序的属性),您可以使用正则表达式将其拉出。但是,这需要大量的摆弄(鉴于您的 DIV 具有 HTML 内容),我建议您从 Html Agility Pack 开始。

于 2013-06-28T17:10:39.553 回答