Как извлечь html-код из WebView и поместить его в TextView?

Я хочу извлечь html-код из WebView и поместить его в TextView. Я ищу его в Интернете, и я нашел этот код.

    /* An instance of this class will be registered as a JavaScript interface */ 
    class MyJavaScriptInterface 
    { 
            private TextView textview1;

            public MyJavaScriptInterface(TextView textview1)
            {
                    textview1 = textview1;
                }

            @SuppressWarnings("unused") 

            public void processContent(String aContent) 
            { 
                    final String content = aContent;
                    textview1.post(new Runnable() 
                    {    
                            public void run() 
                            {          
                                    textview1.setText(content);        
                                }     
                        });
                } 
        } 

    

       webview1.getSettings()
      .setJavaScriptEnabled(true); 
   
    webview1.addJavascriptInterface
  (new MyJavaScriptInterface
 (textview1), "INTERFACE"); 
    
webview1.loadUrl
("http://blog.depauptits.nl/?m=1");
webview1.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) {
    
    
     
 webview1.loadUrl("javascript:window
.LOADHTML.processHTML
('<html>'+document
.getElementsByTagName('html') 
 [0].innerHTML+'</html>');"); } });

Код работает. Приложение запускает WebView, загружая свой URL-адрес, но TextView не отображает HTML-код. Я прошу вашей помощи, пожалуйста, исправьте мой код.


person lyrical nation    schedule 10.10.2020    source источник


Ответы (1)


вы можете использовать зависимость jsoup для извлечения html из URL-адреса

это реализация build.gradle: -

 implementation 'org.jsoup:jsoup:1.11.3'
String url = "http://www.google.com";
Document document = Jsoup.connect(url).get();

таким образом вы можете получить объект документа, который содержит полный html вместе с идентификаторами, тегами и всем остальным.

для получения дополнительной информации вы можете обратиться:

https://jsoup.org/

Это учебник, на который вы можете ссылаться:

https://www.tutorialspoint.com/jsoup/jsoup_load_url.htm

person Kashyap Rathod    schedule 10.10.2020