@loyal
Вы можете получить html-код страницы от Webview в Android, используя следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
WebView webView = findViewById(R.id.webView); // получите ссылку на объект WebView String htmlCode = ""; webView.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { // Получить html-код после загрузки страницы view.loadUrl("javascript:window.HTMLOUT.processHTML('<html>'+document.getElementsByTagName('html')[0].innerHTML+'</html>');"); } }); webView.addJavascriptInterface(new Object() { @JavascriptInterface public void processHTML(String html) { // Обработка полученного html-кода htmlCode = html; // Выполните дальнейшие действия с html-кодом страницы } }, "HTMLOUT"); webView.loadUrl("https://www.example.com"); // Загрузка страницы в WebView |
Здесь мы устанавливаем кастомный WebViewClient и добавляем объект JavascriptInterface, который позволяет вызвать метод Java из JavaScript. Мы вызываем метод processHTML в Java, передавая html-код страницы в качестве параметра. Затем вы можете использовать полученный htmlCode для дальнейшей обработки.
Обратите внимание, что здесь используется JavaScript для получения html-кода, поэтому убедитесь, что JavaScript включен в вашем WebView.
В дополнение к этому коду, вам также может потребоваться добавить следующую строку в файл манифеста Android, чтобы предоставить разрешение на доступ к Интернету:
1
|
<uses-permission android:name="android.permission.INTERNET" /> |