0

WebViewにWebページを表示する前に、IDに従って、Webページのhtmlコードからいくつかの要素を削除したいと思います。私はJavascriptでこれを行う方法を知っていますが、私のアプリではWebViewでJavascriptを無効にすることが重要です。

jsoupのようなhtmlpasersについて書きましたが、特定の問題にそれらを使用する方法を完全に理解することはできません。助言がありますか?

編集:OK、これが私がこれまでに得たものです:

HTMLを文字列にロードし、不要な要素を削除します。

 String HTMLResult="";
        String urlText = "http://www.google.com";
    BufferedReader in = null;
    try {
      URL url = new URL(urlText);
      in = new BufferedReader(new InputStreamReader(url.openStream()));


      String inputLine;
      while ((inputLine = in.readLine()) != null) {
            HTMLResult += '\n'+ inputLine;

      }
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      if (in != null) {
        try {
          in.close();
              HTMLResult=HTMLResult.replace("ExampleElement", "");
        } catch (IOException e) {
          e.printStackTrace();
        }
      }
        }

この部分は正常に動作しますが、非常に低速です。

HTMLコードをWebViewにロードしようとしました

webview.loadData(HTMLResult, "text/html", null);

しかし、Webviewウィンドウにテキスト形式で表示されるコードしか表示されません。

ありがとう、パスカル

4

2 に答える 2

1

ソース html を webview の外部から取得し、それを生データとして解析し、必要なものを変更して、処理された html を webview に与える必要があります。

于 2013-03-21T14:36:46.453 に答える
-1

これを実現するには、Jsoup ライブラリを使用します。

https://jsoup.org/apidocs/org/jsoup/select/Selector.html

Document doc = Jsoup.connect("your url").ignoreContentType(true).get();
Elements ele = doc.select("class to remove").remove();
webView.loadData(doc.toString(),"text/html; charset=UTF-8", null);
于 2016-11-18T14:17:43.357 に答える