使用android将web javascript内容解析为字符串

我想将网站的内容读入字符串中。


我开始使用jsoup如下:


private void getWebsite() {

    new Thread(new Runnable() {

        @Override

        public void run() {

            final StringBuilder builder = new StringBuilder();


            try {


                String query = "https://merhav.nli.org.il/primo-explore/search?tab=default_tab&search_scope=Local&vid=NLI&lang=iw_IL&query=any,contains,הארי פוטר";


                Document doc = Jsoup.connect(query).get();

                String title = doc.title();

                Elements links = doc.select("div");


                builder.append(title).append("\n");


                for (Element link : links) {

                    builder.append("\n").append("Link : ").append(link.attr("href"))

                            .append("\n").append("Text : ").append(link.text());

                }

            } catch (IOException e) {

                builder.append("Error : ").append(e.getMessage()).append("\n");

            }


            runOnUiThread(new Runnable() {

                @Override

                public void run() {

                    tv_result.setText(builder.toString());


                }

            });

        }

    }).start();

}

然而,问题是,在这个网站中,当我使用 Chrome 等网络浏览器时,它在其中一行中显示:


window.appPerformance.timeStamps['index.html']= Date.now();</script><primo-explore><noscript>JavaScript must be enabled to use the system</noscript><style>.init-message {

所以我读到jsoup对于这种情况没有一个好的解决方案。有没有什么好的方法来获取这个页面的元素,即使它使用了javascript?


达令说
浏览 141回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript