0

并非每个网站都能通过 XML 提要、API 等很好地公开他们的数据

我怎样才能从网站中提取信息?例如:

...
<div>
  <div>
    <span id="important-data">information here</span>
  </div>
</div>
...

我来自使用 Apache XMLBeans 进行 Java 编程和编码的背景。当我知道结构和数据位于已知标记之间时,是否有任何类似于解析 HTML 的内容?

谢谢

4

3 回答 3

4

这是一篇文章,其中包含几个用 java 编写的屏幕抓取工具。

一般来说,听起来你想看看正则表达式,它会做你正在寻找的模式匹配。

希望有帮助!

于 2008-11-25T19:26:17.127 回答
3

有几个用于 Java 的开源 HTML 解析器。

我过去使用过JTidy,并且很幸运。它将为您提供 html 页面的 DOM,您应该能够从那里获取所需的标签。

于 2008-11-25T19:26:49.387 回答
0

对于这样的任务,Java 似乎是一个相当困难的约束。这是一个硬性要求吗?脚本语言非常适合构建真正大量的最后一英里代码。

如果你愿意接受,ruby + hpricot让这一切变得微不足道。您可以使用 css 或 xpath 选择器(或两者)来查找(和操作)HTML 中的内容。在您的示例中抓取文档、解析并提取文本实际上是一行代码。

于 2008-11-25T19:45:13.263 回答