2

目前我需要从网站中提取数据。我尝试使用 HTML Agility Pack,它使用 XPATH 来提取数据。是否有可用的工具可以自动编写 XPATH,以便即使是天真的用户也可以使用配置解析工具而无需编写 XPATH。请为我的场景提供您宝贵的建议。

注意:一些工具可用于编写 XPATH,但它需要格式良好的 XML,但在我的情况下,我将格式错误的 HTML 文档作为输入。

4

3 回答 3

3

是的,有这样的工具

您当然可以使用许多 Web 浏览器中存在的内置方法(如 Mike 所建议的那样)。但是,还有其他插件和实用程序。

我发现 Chrome Extension XPath Helper是最有用的。它具有相同的目的,但它易于使用并创建更健壮的 XPath 表达式(基于 id 等属性),而不仅仅是位置。您还可以在线编辑表达式并实时查看结果。

于 2012-05-31T16:19:14.670 回答
2

不知道你在这里到底要做什么,但是当我使用 HtmlAgilityPack 时,我利用 Linq 功能的方式比 XPath 更多。我最喜欢的策略是使用 Descendants 方法,尤其是在添加 Where 子句以缩小搜索范围时。从那里,您可以检查名称、ID,或使用 GetAttributeValue 来检查其他属性(如 href)。我发现 Linq 阅读起来更加清晰,它让我可以非常详细地进行解析,而不会迷失在 XPath 语法中。

于 2012-05-30T22:50:48.987 回答
0
  1. 在 Chrome 浏览器中打开网站
  2. 按 Ctrl+Shift+I(将打开开发工具)
  3. 选择仪器窗口顶部的“元素”
  4. 选择仪器窗口底部的放大镜
  5. 在浏览器中选择所需的元素
  6. 右键单击 DOM 树中的选定行并选择“复制 XPath”
于 2012-05-31T14:16:02.100 回答