Android-用jsoup解析Webview上的网站
创始人
2024-08-19 23:00:39
0次
  1. 添加 jsoup 依赖到 build.gradle 文件中:
dependencies {
    implementation 'org.jsoup:jsoup:1.14.2'
}
  1. 为 WebView 设置 WebChromeClient,使其能够在网页加载完成后执行 js:
WebView webview = findViewById(R.id.webview);
webview.setWebChromeClient(new WebChromeClient() {
    @Override
    public void onProgressChanged(WebView view, int newProgress) {
        super.onProgressChanged(view, newProgress);
        if (newProgress == 100) { // 网页加载完成
            view.loadUrl("javascript:window.android.onHtmlLoaded(document.getElementsByTagName('html')[0].outerHTML);"); // 执行 js 并传递获取到的 html 字符串给 Android 端
        }
    }
});
  1. 在 js 中将获取到的 html 字符串传递给 Android 端:
window.android.onHtmlLoaded(document.getElementsByTagName('html')[0].outerHTML);
  1. 在 Android 端实现 JsInterface 接口,接收 js 传递过来的 html 字符串,并使用 jsoup 进行解析:
// 实现 JsInterface 接口
class MyJavascriptInterface {
    @JavascriptInterface
    public void onHtmlLoaded(String html) {
        Document doc = Jsoup.parse(html); // 使用 jsoup 解析 html
        Elements links = doc.select("a[href]"); // 获取所有带 href 属性的链接
        ...
    }
}

// 为 WebView 添加 JsInterface
webview.addJavascriptInterface(new MyJavascriptInterface(), "android");
  1. 在 onHtmlLoaded 方法中使用 jsoup 解析 html,并获取需要的内容。例如获取所有带 href 属性的链接:
Document doc = Jsoup.parse(html); // 使用 jsoup 解析 html
Elements links = doc.select("a[href]"); // 获取所有带 href 属性的链接
for (Element link : links) {
    String url = link.attr("abs:href"); // 获取链接的绝对路径
    ...
}

相关内容

热门资讯

来一盘开挂!竞咪21点辅助透视... 来一盘开挂!竞咪21点辅助透视挂,沅江麻将存在有外挂,都是有挂解密1、很好的工具软件,可以解锁游戏的...
玩家必用开挂!途游暗牌辅助透视... 玩家必用开挂!途游暗牌辅助透视挂,开心武汉花是有外挂,其实有挂助手1.开心武汉花 选牌创建新账号,点...
此事引发网友热议透视挂!欢乐棋... 此事引发网友热议透视挂!欢乐棋牌辅助透视挂,澳门永利集团是真的有外挂,总是有挂方法1、每一步都需要思...
现场直击辅助!拱趴游戏经典版辅... 现场直击辅助!拱趴游戏经典版辅助透视挂,讯奇麻将真的是有外挂,本来真的有挂1、拱趴游戏经典版免费脚本...
重大通报辅助!闲来互娱辅助透视... 重大通报辅助!闲来互娱辅助透视挂,约战麻将确实有外挂,总是真是有挂1、下载好闲来互娱透视辅助下载之后...
重大发现辅助!科米麻将辅助透视... 重大发现辅助!科米麻将辅助透视挂,乐游石城麻将真的是有外挂,果然有挂总结亲,关键说明,科米麻将透视脚...
现有说明如下开挂!九天大厅辅助... 现有说明如下开挂!九天大厅辅助透视挂,桓仁奥云麻将存在有外挂,真是有挂秘籍1)九天大厅辅助插件:进一...
玩家攻略开挂!大牌联盟辅助透视... 玩家攻略开挂!大牌联盟辅助透视挂,微乐斗地主确实有外挂,一直证实有挂小薇(辅助器软件下载)致您一封信...
分享个大家辅助!神殿娱乐辅助透... 分享个大家辅助!神殿娱乐辅助透视挂,panda是真的有外挂,切实有挂规律1、这是跨平台的神殿娱乐轻量...
热点推荐辅助!闲聚辅助透视挂,... 热点推荐辅助!闲聚辅助透视挂,杭州麻将是有外挂,原来有人有挂小薇(辅助器软件下载)致您一封信;亲爱闲...