Как удалить тег абзаца из URL, загруженного из Webview в Android Studio? - PullRequest
0 голосов
/ 17 марта 2020

// Я пытаюсь отображать только живые данные mcx в моем веб-просмотре с этого http://www.mcxlivedata.in/ этого URL, но теперь я очень запутался, как я могу удалить ненужный абзац или я могу показать только таблицу mcx в мой веб-просмотр с использованием getElementTag, пожалуйста, помогите мне решить эту проблему, спасибо за продвижение ..

package com.tech.jkjewellers;


import androidx.appcompat.app.AppCompatActivity;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; 
import android.annotation.SuppressLint;
import android.graphics.Bitmap;
import android.os.AsyncTask;
import android.os.Bundle;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;    
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;    
import java.io.IOException;


public class McxActivity extends AppCompatActivity {
    String url = "http://www.mcxlivedata.in/";
    WebView webView;

    @SuppressLint("SetJavaScriptEnabled")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_mcx);

        webView = findViewById(R.id.web_view);
        new MyAsynTask().execute();    
        WebSettings webSettings = webView.getSettings();
        webSettings.setJavaScriptEnabled(true);
        webView.loadUrl(url);

    }

// использование jsoup для удаления тегов

    @SuppressLint("StaticFieldLeak")
    private class MyAsynTask extends AsyncTask<Void, Void, Document> {
        @Override
        protected Document doInBackground(Void... voids) {

            Document document = null;
            try {
                document = Jsoup.connect(url).get();
                document.getElementById("masthead").remove();
                document.getElementsByClass("site-footer clearfix").remove();
                document.getElementsByTag("<p>").remove();

            } catch (IOException e) {
                e.printStackTrace();
            }
            return document;
        }

        @Override
        protected void onPostExecute(final Document document) {
            super.onPostExecute(document);
            webView.loadDataWithBaseURL(url, document.toString(), "text/html", "utf-8", "");
            webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
            webView.setWebViewClient(new WebViewClient() {
                @Override
                public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
                    return true;
                }

                @Override
                public void onPageFinished(WebView view, String url) {

                    super.onPageFinished(view, url);


                }
            });

        }
    }
}

1 Ответ

0 голосов
/ 18 марта 2020

Это должен быть правильный подход

document = Jsoup.connect(url).get();
            document.getElementById("masthead").remove();
            document.getElementsByClass("site-footer").remove(); 
            document.getElementsByTag("p").remove();
...