【问题标题】:How to extract the html code from webview to textview?如何将html代码从webview提取到textview?
【发布时间】:2023-04-03 19:20:02
【问题描述】:

自从我开始在互联网上搜索这个问题以来已经一周了,但我无法得到解决方案。

我想从 webview 获取 html 代码并将其放在 android 上的 textview 中。 我不能使用 jsoup 连接,因为... 我不能解释太多,这是我的例子(仅示例)

在 webview 我有 https://facebook.com(已经登录我的 fb 帐户)

我不能使用 jsoup connect https://facebook.com,因为 html 在 fb 登录活动中,我的意思是不要从 facebook 登录

希望你能理解

【问题讨论】:

  • 使用 JSoup 登录 FaceBook 是不可能的,因为 FaceBook 已经在他们的“登录安全性”方面下了功夫防止人们使用刮板下载他们所有的帖子和照片。您可以(可能)使用 Selenium,尽管 Selenium Documentation 的第一页明确说明使用 Selenium 抓取人们的 Facebook 帖子是最糟糕的做法 - 就在这里:Gmail, email and Facebook logins

标签: java android html webview jsoup


【解决方案1】:

创建负载监听器

class HTMLListener{
    public void processHTML(String html)
    {
        Log.e("output_html",html);
        // Then you can set your textview with html
    }
}

然后在你的 webview 配置中添加这个

webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(new HTMLListener(), "LOADHTML");

然后在 webview 客户端中;

    webView.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
 
                return true;
        }              
       
        @Override
        public void onPageStarted(WebView view, String url,
                        Bitmap favicon) {
        }
       
        public void onPageFinished(WebView view, String url) {
            view.loadUrl("javascript:window.LOADHTML.processHTML('<html>'+document.getElementsByTagName('html')[0].innerHTML+'</html>');");
        }
});

【讨论】:

    猜你喜欢
    • 2021-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-29
    相关资源
    最近更新 更多