Html Agility Pack:查找评论节点
Posted
技术标签:
【中文标题】Html Agility Pack:查找评论节点【英文标题】:Html Agility Pack: Find Comment Node 【发布时间】:2011-04-20 03:24:29 【问题描述】:我正在抓取一个网站,该网站使用 javascript 来使用 html Agility 包动态填充网站的内容。
基本上,我正在搜索 XPATH "\\div[@class='PricingInfo']"
,但该 div 节点正在通过 Javascript 写入 DOM。
所以,当我通过 Html Agility 包加载页面时,找不到上面提到的 XPATH。
原来在我要解析的特定脚本块之前有一个注释。
<!--Module 328 Buying Options Table-->
<script type="text/javascript" language="JavaScript">
var data =
price: 30.00
</script>
对于这个站点,有许多脚本块,因此我需要通过查找此自动生成的评论 <!--Module 328 Buying Options Table-->
来缩小范围,并且该节点的兄弟节点将是正确的脚本块。
知道如何搜索特定评论然后获取相邻的脚本块吗?
谢谢!
【问题讨论】:
+1 表示不使用正则表达式! 【参考方案1】:htmlDoc.DocumentNode.SelectSingleNode("//comment()[contains(., 'Buying Options')]/following-sibling::script")
【讨论】:
就像一个魅力。谢谢!现在,我需要一种方法来解析 Javascript 对象。 只是再添加一件事。一旦我得到脚本注释,我就能够使用正则表达式解析出我需要的信息。谢谢!以上是关于Html Agility Pack:查找评论节点的主要内容,如果未能解决你的问题,请参考以下文章
Html Agility Pack/C#:如何创建/替换标签?
Html Agility Pack SelectSingleNode 在迭代中总是给出相同的结果?
csharp Html Agility Pack #CSharp #HtmlParsing