Android中通过Java获取Webview加载内容

Android:轻松获取WebView的内容宽度 The extensive Android SDK allows you to do many great things with particular views like the WebView for displaying webpages on Android powered devices. Android SDK 的扩展,通过使用特定的view,允许你做许多事情。比如,WebVi 阅读详情

有时候我们需要在加载webview时,获取加载完成的内容,当然,WebView也是有可能包含javascript。通过以下操作,我们是可以获取到WebView加载的内容。

1、自定义一个内部类,获取WebView加载的内容

class Handler {
	public void show(String data) {  // 这里的data就webview加载的内容,即使页面跳转页都可以获取到,这样就可以做自己的处理了 
		new AlertDialog.Builder(WebViewActivity.this).setMessage(data).create().show();
	}
}

2、webview关键代码

// web页面处理
webpage.getSettings().setJavaScriptEnabled(true);// 支持javascript
webpage.addJavascriptInterface(new Handler(), "handler");  // 相当于在网页的js中增加一个handler类,实现java与WebView的js交互
webpage.loadUrl(webpage_url);		
webpage.setWebViewClient(new WebViewClient() {
			// 依然在webview打开新页面
			public boolean shouldOverrideUrlLoading(WebView view, String url) {
				view.loadUrl(url);
				return true;
			}

			@Override
			public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event) {
				return super.shouldOverrideKeyEvent(view, event);
			}

			@Override
			public void onPageStarted(WebView view, String url, Bitmap favicon) {
				super.onPageStarted(view, url, favicon);
			}

			@Override
			public void onPageFinished(WebView view, String url) {
				// 通过内部类定义的方法获取html页面加载的内容,这个需要添加在webview加载完成后的回调中
				view.loadUrl("javascript:window.handler.show(document.body.innerHTML);");
				super.onPageFinished(view, url);
			}

			@Override
			public void onScaleChanged(WebView view, float oldScale,
					float newScale) {
				// TODO Auto-generated method stub
				super.onScaleChanged(view, oldScale, newScale);
				webpage.requestFocus();
				webpage.requestFocusFromTouch();
			}
		});

通过以上的操作,你就可以达到你需要的效果了。挺简单实用的


智能音箱开发者必看:CEVA-BX vs Cadence HiFi音频DSP实战选型指南(附功耗对比表) 本文深入对比了CEVA-BX和Cadence HiFi两大音频DSP架构在智能音箱开发中的性能差异,涵盖语音唤醒、多麦克风阵列处理等核心场景。通过实测数据和功耗对比表,为开发者提供选型参考,帮助优化产品性能和能效表现。 阅读详情

相关推荐

VS(QT)调用Matlab函数的方法

调试–>窗口–>异常设置–>Win32 Exceptions全部不要勾选。选择Microsoft Visual C++ 2017。将生成的.h和.lib分别放置在对应的文件夹。输入mex -setup C++输入deploytool选择。选择Realse x64。

woshigaowei5146的博客 591

Android中获取WebView加载的html中console.log输出的内容

场景 Android中使用WebView加载本地html并支持运行JS代码和支持缩放: Android中使用WebView加载本地html并支持运行JS代码和支持缩放_BADAO_LIUMANG_QIZHI的博客-优快云博客 使用WebView加载html显示时,在js代码中通过console.log()输出的日志内容,怎样在AndroidStudio中 logcat调试时获取到。 在上面的方式下可以直接捕获到js中console.log()输出的内容。 这是因为设置为ChromeClient

BADAO_LIUMANG_QIZHI的博客 8750

DLMS-Blue-Book蓝皮书—曲线类

attribute_index 1 指的是第 1 个属性(即 logical_name),attribute_index 2 指的是第 2 个属性,等等;如果其他“曲线通用类”对象捕获了这个缓冲区,它们的缓冲区也将被清空,以保证它们的缓冲区条目是同质的。如果捕获对象是曲线通用类的缓冲区,则 data_index 标识缓冲区(即列)中的捕获对象(即内部曲线通用类中的列);如果曲线通用类已排序,则调用捕获方法将把新条目存储在缓冲区中的适当位置,移动所有后续条目,并可能丢失最不相关的条目。

一个bug是bug,多个bug能work 1452

Android查看web日志,详解Android WebView监听console错误信息

根据需求,我们要拿到h5的错误信息,并将error信息进行上报。查询了下Android WebView的API发现了WebChromeClient这个方法可以满足要求:@Overridepublic boolean onConsoleMessage(ConsoleMessage consoleMessage) {//获取log的级别switch (consoleMessage.messageLev...

weixin_42511217的博客 3265

手把手教你用MaxEnt+ArcGIS玩转物种分布预测

本文详细介绍了如何利用MaxEnt最大熵模型与ArcGIS软件进行物种分布预测。通过实战案例,从数据收集、环境变量处理、模型参数设置到结果可视化分析,手把手教你掌握生态位模型的核心流程。结合SDM toolbox插件,可高效完成数据预处理与高级空间分析,是生态学与保护生物学研究的实用指南。

weixin_29309475的博客 560

ESP32S3学习——i2c,点亮0.96寸oled

ESP32S3学习——i2c,点亮0.96寸oled

HandBAI的博客 1万+

android webview 加载内容,Android中通过Java获取Webview加载内容

有时候我们需要在加载webview时,获取加载完成的内容,当然,WebView也是有可能包含javascript。通过以下操作,我们是可以获取到WebView加载的内容。1、自定义一个内部类,获取WebView加载的内容class Handler {public void show(String data) { // 这里的data就webview加载的内容,即使页面跳转页都可以获取到,这样就可...

weixin_30384285的博客 1191

【语音识别算法】深度学习语音识别算法与传统语音识别算法的区别、对比及联系

深度学习语音识别算法与传统语音识别算法在理论基础、实现方式、性能表现等方面存在显著区别,同时也有一些联系。下面将从几个方面详细比较这两种方法,并给出应用实例和代码示例。

weixin_51306394的博客 2567

WebView之 提取网页内容

日前遇到了这么一个需求,用WebView去加载url,在WebView 页面加载成功后,提取页面的内容。在页面加载完成再提取,就需要设置WebViewClient对象,重写 里面的的方法: client = new WebViewClient(){ @Override public boolean shouldOverrideUrlLoadi...

驱梦人的博客 3064

告别黑窗口:XShell+X11转发图形化界面的5分钟保姆级教程(附Xming配置)

本文详细介绍了如何使用XShell和X11转发技术快速实现Linux图形化界面的远程访问。通过5分钟快速配置指南,包括服务端设置、客户端工具选择及XShell+Xming的完美配置,帮助用户高效运行GUI应用程序,提升远程工作效率。特别适合需要图形化操作的开发者和运维人员。

weixin_29223603的博客 328

Qt应用软件【协议篇】自定义协议处理串口半包贴包

Qt串口数据,半包,贴包,丢包数据处理

小鱼酱的博客 1211

webview获取内部post,get地址

咳咳说一下,这只是笔记 之前做软件的时候,用到webview访问某讯的一个网页获取登录的cookies,大部分数据都是有的,不过skey的时候分安卓和pc,需要加密成tk,就出了问题,而且登录时遇到了重定向到jsbridge,我知识有限,解决不了。 不过在抓自己软件包的时候,发现他的tk已经通过post传递了,所以萌生了想法。 一下是代码,就是重写WebResourceResponse shoul...

qq_15781179的博客 614

【生产实践】PostgreSQL高可用Patroni安装(超详细已踩坑)

一 安装Patroni 0 Patroni 对Python的版本要求 我安装的是Patroni最新版本 :4.0.3,Patroni 对Python 版本有要求,没有具体的版本矩阵,但是根据每个版本发布信息可以得到以下信息 Patroni 4.0 需要 Python 3.8 以上(可以根据下面发布版本信息推理出) Version 3.0.2 Version 3.0.2 dropped support of Python older than 3.6. 版本3.0.2不再支持3.6版本以下的P

DBA之路的博客 1741

webview取java的参数值_Android中通过Java获取Webview加载内容

有时候我们需要在加载webview时,获取加载完成的内容,当然,WebView也是有可能包含javascript。通过以下操作,我们是可以获取到WebView加载的内容。1、自定义一个内部类,获取WebView加载的内容class Handler {public void show(String data) { // 这里的data就webview加载的内容,即使页面跳转页都可以获取到,这样就可...

weixin_29745227的博客 116

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

android webview 网页,Android WebView 获取网页数据(html)

1. activity_main.layoutxmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity">android:id="@+id/webView"a...

weixin_42134878的博客 556

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

安卓获取webview加载的内容

在页面加载webView,进行初始化设置@SuppressLint("SetJavaScriptEnabled")private void initWebView() {    webView.getSettings().setJavaScriptEnabled(true);    webView.addJavascriptInterface(new InJavaScriptLocalObj(),...

weixin_38839005的博客 3782

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

(转)android中如何获得webView中的内容

本文概要:在程序中经常会用到webView来显示网页,但如果能够得到网页中的内容呢,本文将给你一个最简单的事例。文章最后附代码下载。 在做新浪微博客户端的时候需要用到oauth认证,会弹出新浪的认证网页,用户在新浪的网页中授权后返回到程序中完成认证。使用的是类似weibo://OauthActivity这样的URI返回的,也就类似于http://weibo.com这样。但是UC浏览器却无法完成...

wpf814533631 825

android webview 获取网页内容,在WebView中获取网页中的内容

原理:重写WebViewClient的onPageFinished方法,在onPageFinished中加载一段js代码,js代码再调用本地方法用下面的方法可以获取网页的html源码importandroid.app.Activity;importandroid.graphics.Bitmap;importandroid.os.Bundle;importandroid.util.Log;i...

weixin_39996478的博客 2361

android中如何获得webView中的内容

 本文概要:在程序中经常会用到webView来显示网页,但如果能够得到网页中的内容呢,本文将给你一个最简单的事例。文章最后附代码下载。 在做新浪微博客户端的时候需要用到oauth认证,会弹出新浪的认证网页,用户在新浪的网页中授权后返回到程序中完成认证。使用的是类似weibo://OauthActivity这样的URI返回的,也就类似于http://weibo.com这样。但是UC浏览器却无

bellovin的专栏 6540

android webview 获取html,如何从webview中获取html内容?

如何从webview中获取html内容?从webview获取html代码的最简单方法是哪一种?我尝试过一些方法,从堆栈溢出和谷歌,但找不到确切的方法。请说出确切的方法。publicclasshtmldecoderextendsActivityimplementsOnClickListener,TextWatcher{TextViewtxturl;Buttonbtgo;WebView...

weixin_39969028的博客 731

android webview流程,Android-通过WebView获取html内容

前言有时候我们可能需要做一些模拟操作,比如爬虫,一般我们会直接采用HTTP请求实现扒取网页内容,不过,我们可以使用WebView来实现。如何实现WebView初始化,我们为其设置参数,为其设置嵌入JavaScript代码的Java对象。this.getSettings().setJavaScriptEnabled(true);this.addJavascriptInterface(new InJa...

weixin_35693055的博客 1033

Android的webView中获得Html代码

需求是,将网页显示在webview中,但是有的时候会出出现400或者服务器无法侦测,如服务器已经停止了, 但是webview还是会请求。那么这么错误都会显示在webview上面,所以我想拦截这些错误。 类似这种问题,我们可以考虑下现在市面上的浏览器的实现。比如手机上的UC浏览器,其实细心的同学会发现,在UC浏览器上,UC浏览器每次加载网页的时候都先到自已的服务器过一遍,目的是要检测目标

Dream It Possible 9594

android 匹配html,android webview获取html代码和根据id获取value实例

1 前言最近做一个项目,需要webview获取网页中input的内容,把知识整理一下,做个记录,也希望对大家有所帮助。2 获取html内容2.1 初始化webviewwebview.getSettings().setJavaScriptEnabled(true);webview.addJavascriptInterface(new InJavaScriptLocalObj(), "java_obj...

weixin_31170085的博客 275

Android 网络:使用URLConnection提交请求,获取html代码加载WebView

else { out.println(“登录失败!”); } %> web.xml : <?xml version="1.0" encoding="utf-8"?> <web-app xmlns=“http://java.sun.com/xml/ns/javaee” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation="http://java.s.

m0_64604636的博客 235

android webview 加载本地html 实现 与 java 之间的相互响应

xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="f

Men-DD 2万+

Android WebView 获取网页数据(html)

Android WebView 获取网页数据(html) 发表于7个月前(2015-09-25 11:20)   阅读(813) | 评论(0) 7人收藏此文章, 我要收藏 赞0 4月23日,武汉源创会火热报名中,期待您的参与>>>>>    目录[-] 1. activity_main.layout 2. MainActivity.java 3.

autumn20080101的专栏 698
上一篇: WIN7操作平台获取管理员权限批处理
下一篇: Android 使用新浪微博SSO授权
hap_gx
博客等级 码龄14年 6粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值