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、进入到微乐广西...
查到实测!鼎盛棋牌开挂功能插件... 查到实测!鼎盛棋牌开挂功能插件,鼎盛棋牌总是是有开挂插件(有辅助挂辅助)1)鼎盛棋牌免费钻石:进一步...
分辨真假!凑一桌游戏辅助功能脚... 分辨真假!凑一桌游戏辅助功能脚本,凑一桌游戏都是是有辅助脚本(有辅助挂存在)分辨真假!凑一桌游戏辅助...
推荐十款!咪咪扑克开挂功能攻略... 推荐十款!咪咪扑克开挂功能攻略,咪咪扑克好像存在有开挂攻略(有辅助挂存在)亲,关键说明,咪咪扑克透视...
热点讨论!剧乐部辅助器功能神器... 热点讨论!剧乐部辅助器功能神器,剧乐部确实是有辅助器神器(有辅助挂实锤)1、打开软件启动之后找到中间...
最新技巧!秀山博胡开挂功能软件... 最新技巧!秀山博胡开挂功能软件,秀山博胡切实是有开挂软件(有辅助挂app)1、任何秀山博胡透视是真的...
玩家必看教程!边锋斗地主辅助功... 玩家必看教程!边锋斗地主辅助功能神器,边锋斗地主都是有辅助神器(有辅助挂讲解)1、边锋斗地主免费辅助...
查到实测!紫峰台州麻将透视功能... 查到实测!紫峰台州麻将透视功能插件,紫峰台州麻将一直真的有透视插件(有辅助挂辅助)1、紫峰台州麻将有...