我正在继续从事我已经从事了一段时间的项目,并且一直在努力从网站上提取一些数据。该网站有一个 iframe,可以从未知来源中提取一些数据。数据位于标签中的 iframe 中,如下所示:
<DIV id="number_forecast"><LABEL id="lblDay">9,000</LABEL></DIV>
它上面还有一堆其他的废话,但是这个 div id / label 是完全唯一的,并且没有在代码中的其他任何地方使用。
我正在继续从事我已经从事了一段时间的项目,并且一直在努力从网站上提取一些数据。该网站有一个 iframe,可以从未知来源中提取一些数据。数据位于标签中的 iframe 中,如下所示:
<DIV id="number_forecast"><LABEL id="lblDay">9,000</LABEL></DIV>
它上面还有一堆其他的废话,但是这个 div id / label 是完全唯一的,并且没有在代码中的其他任何地方使用。
jsoup可能是您想要的,它擅长从 HTML 文档中提取数据。
有许多示例展示了如何使用 API:http: //jsoup.org/cookbook/extracting-data/selector-syntax
该过程将分为两个步骤:
代码如下所示:
// let's find the iframe
Document document = Jsoup.parse(inputstream, "iso-8859-1", url);
Elements elements = document.select("iframe");
Element iframe = elements.first();
// now load the iframe
URL iframeUrl = new URL(iframe.absUrl("src"));
document = Jsoup.parse(iframeUrl, 15000);
// extract the div
Element div = document.getElementById("number_forecast");
在您包含 iframe 的页面中,将您 iframe 的源更改为您自己的 url。此 url 将使用您的 ouw 控制器进行处理,该控制器将读取内容、解析它、提取您需要的所有内容并写入响应。如果您的 iframe 中有绝对引用,这应该可以工作。