gpt4 book ai didi

java - 使用 Java 从 HTML 中提取微数据

转载 作者:行者123 更新时间:2023-12-02 09:14:57 32 4
gpt4 key购买 nike

我真的需要帮助来提取嵌入在 HTML5 中的 Mircodata。我的目的是从网页中获取结构化数据,就像google的这个工具:http://www.google.com/webmasters/tools/richsnippets 。我搜索了很多,但没有可行的解决方案。

目前,我使用any23库,但找不到任何文档,只有javadoc,它没有为我提供足够的信息。

我使用any23的微数据提取器,但卡在第三个参数:“org.w3c.dom.Document in”。我无法将 HTML 内容解析为 w3cDom。我使用过 JTidy 和 JSoup,但这些库中的 DOM 对象并未通过 Extractor 构造函数修复。另外,我对Microdata Extractor的第二个参数也有疑问。

我希望任何人都可以帮助我处理any23,或者建议另一个库可以解决这个提取问题。

编辑:我自己使用与any23命令行工具相同的方式找到了解决方案。这是代码片段:

HTTPDocumentSource doc = new HTTPDocumentSource(DefaultHTTPClient.createInitializedHTTPClient(), value);
InputStream documentInputInputStream = doc.openInputStream();
TagSoupParser tagSoupParser = new TagSoupParser(documentInputInputStream, doc.getDocumentURI());
Document document = tagSoupParser.getDOM();
ByteArrayOutputStream byteArrayOutput = new ByteArrayOutputStream();
MicrodataParser.getMicrodataAsJSON(tagSoupParser.getDOM(),new PrintStream(byteArrayOutput));
String result = byteArrayOutput.toString("UTF-8");

这行代码仅从 HTML 中提取微数据并将其写入 JSON 格式。我尝试使用 MicrodataExtractor,它可以将输出格式更改为其他格式(Rdf、turtle...),但输入文档似乎只接受 XML 格式。当我放入 HTML 文档时,它抛出“文档未启动”。

如果有人找到了MicrodataExtractor的使用方法,请在这里留下答案。谢谢。

最佳答案

xpath一般是消费html或xml的方式。

看看:How to read XML using XPath in Java

关于java - 使用 Java 从 HTML 中提取微数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27034610/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com