使用java解析现代网页(javascript / html5 / json)

时间:2016-07-15 03:10:25

标签: java jsoup

我曾经有一个使用jsup解析雅虎财经网页的工具。

最近雅虎改变了他们页面的布局,现在页面充满了javascript,看起来像json数据。

请看这里的例子: http://finance.yahoo.com/quote/AAPL/financials?ltr=1

在chrome中检查页面显示了一个不同的视图(在javascript执行并创建了dom之后),而不是java文档在jsup中的样子:

Document d = Jsoup.connect(link).get();// link same as above
Element body = d.body();

返回一个Element(正文),其中包含大量数据文档,如下所示:

<div class="footer Py(10px) Ta(c) Bgc(#fff) Py(0) BdT Bdc($lightGray)" data-reactid=".1vh5ojua4n4.1.$0.0.0.3.1.$main-0-Quote-Proxy.$main-0-Quote.0.2.1.3.0.$footer">
<div class="Fz(s) Py(20px) " data-reactid=".1vh5ojua4n4.1.$0.0.0.3.1.$main-0-Quote-Proxy.$main-0-Quote.0.2.1.3.0.$footer.0">
<div class="Pb(10px) D(b)" data-reactid=".1vh5ojua4n4.1.$0.0.0.3.1.$main-0-Quote-Proxy.$main-0-Quote.0.2.1.3.0.$footer.0.0">
<a class="Mend(10px)" href="http://help.yahoo.com/kb/index?page=content&amp;y=PROD_FIN&amp;locale=en-US&amp;id=SLN2310&amp;pir=Zm7qO7BibUkC.4dK5GxJ95B3DCru2iA5odBNM0pj" data-reactid=".1vh5ojua4n4.1.$0.0.0.3.1.$main-0-Quote-Proxy.$main-0-Quote.0.2.1.3.0.$footer.0.0.0">

知道如何在java中解析这种类型的文档吗?我怀疑我需要首先使用java脚本引擎运行它,然后解析结果,或者可能还有另一种方法。

0 个答案:

没有答案