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"); // 获取链接的绝对路径
    ...
}

相关内容

热门资讯

实测交流!微信微乐小程序有挂黑... 实测交流!微信微乐小程序有挂黑科技,微信小程序多乐辅助器-本来是有辅助神器(有挂细节)运微信微乐小程...
科技揭秘!微乐陕西小程序破解器... 科技揭秘!微乐陕西小程序破解器,微乐游戏小程序辅助器免费苹果版-原来真的有辅助教程(有挂猫腻)1、在...
总算了解!微乐家乡麻辣自建房辅... 总算了解!微乐家乡麻辣自建房辅助app,微乐建房辅助工具免费入口-好像是真的有辅助方法(有挂方法)1...
教学盘点!微乐小程序免费工具,... 教学盘点!微乐小程序免费工具,微乐小程序黑科技辅助工具2026最新推荐-一贯真的有辅助挂(有挂透视)...
一分钟快速了解!微乐家乡麻将辅... 一分钟快速了解!微乐家乡麻将辅助,微乐自建房怎么提高胜率-竟然真的是有辅助插件(有挂讲解)1、金币登...
科技通报!微乐手游辅助脚本平台... 科技通报!微乐手游辅助脚本平台,微乐小程序微乐家乡辅助器-一贯有辅助app(有挂教学)1、首先打开微...
最新技巧!微信小程序微乐房间怎... 最新技巧!微信小程序微乐房间怎么开挂,微乐宁夏小程序插件-其实真的有辅助软件(证实有挂)1、微信小程...
每日必看教程!微信小程序微乐辅... 每日必看教程!微信小程序微乐辅助器,微乐挖坑内购破解-好像真的是有辅助器(真的有挂)1、用户打开应用...
最新技巧!微信微乐小程序修改器... 最新技巧!微信微乐小程序修改器,微信微乐陕西挖坑小程序下载-好像存在有辅助方法(了解有挂)1、完成微...
三分钟了解!微信小程序微乐辅助... 三分钟了解!微信小程序微乐辅助免费,微信小程序游戏辅助-真是是真的有辅助方法(有挂方法)1、每一步都...