如何在Android上获取javascript生成的html
How to get javascript-generated html on android
我想从网址中获取呈现的html内容。
起初,我尝试了以下代码。但是,我只得到一些html和javascript,这不是我想要的。
我想在执行javascript后获取html内容。 我如何在安卓上做到这一点?
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(url);
HttpResponse response = client.execute(request);
String html = "";
InputStream in = response.getEntity().getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
StringBuilder str = new StringBuilder();
String line = null;
while((line = reader.readLine()) != null)
{
str.append(line);
}
in.close();
html = str.toString();
最后,我从这个 https://stackoverflow.com/a/8623129/2243078 中找到了解决方案
// intercept calls to console.log
web.setWebChromeClient(new WebChromeClient() {
public boolean onConsoleMessage(ConsoleMessage cmsg)
{
// check secret prefix
if (cmsg.message().startsWith("MAGIC"))
{
String msg = cmsg.message().substring(5); // strip off prefix
/* process HTML */
return true;
}
return false;
}
});
// inject the JavaScript on page load
web.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String address)
{
// have the page spill its guts, with a secret prefix
view.loadUrl("javascript:console.log('MAGIC'+document.getElementsByTagName('html')[0].innerHTML);");
}
});
web.loadUrl("http://www.google.com");
相关文章:
- 来自文本输入null的html javascript变量
- Html/Javascript-如何屏蔽除英国以外的所有欧盟国家,并允许所有非欧盟国家
- html+javascript:如何在某些条件下禁用dropdownlist中的null选项
- 在HTML/JavaScript中,有没有一种方法可以在图像开始加载时知道图像的最终布局尺寸
- HTML/Javascript表单会自动重置
- html/javascript中的可拖动文本
- 在HTML/JavaScript中减去两个数字
- 基本的HTML Javascript程序.这是怎么回事
- 一个html/javascript'小工具'知道用户何时单击了小部件外的任意位置
- HTML/JavaScript拖动&Drop-是否可以使重影图像*NOT*看起来'冲洗掉'
- 在HTML/Javascript文件中获取App Inventor 2变量值
- HTML/JavaScript表格标题
- 如何修复在浏览器中打开后出现在屏幕上的html/Javascript代码
- 在HTML JavaScript头部分运行Google脚本函数
- 如何在 html/javaScript/Jquery 中“浏览文件夹”
- 带有消息html/javascript的进度条
- 在html/javascript中请求撤消/重做事件
- 使用HTML/Javascript表单使用ActiveXObject创建带有嵌入图像的outlook电子邮件
- 使用html/javascript启动小部件
- 移动html/javascript编程中的变量传递