如何在Android中阅读HTML标签?

时间:2013-01-06 17:27:38

标签: android html-parsing

在我的应用程序中,我必须通过从一个静态URL获取数据来创建url,我必须从该页面读取值(即来自HTML标记,即),并构建新的URL并在webview中显示它。

我遇到问题,如何获取给定网址的页面来源并获取特定的标记值 像

<HTML>
   <Head>
      <Title>ABCDE</Title>
   </Head>
  <div>
   <input type="hidden" name="_MYNAME" id="_MYNAME" value="" />
   <input type="hidden" name="_EVENT" id="__EVENT" value="" />
   <input type="hidden" name="__MYSTATE" id="__MYSTATE" value="">
  </div>

我需要读取tab的值,我尝试使用htmlcleaner但是我没有成功。有什么建议吗?

2 个答案:

答案 0 :(得分:0)

您可以使用YQL(Yahoo查询语言)编写查询以获取HTML数据。  YQL返回JSON或XML结果,您可以使用AsyncTask中的HttpGet读取该结果。 这是开发人员指南: http://developer.yahoo.com/yql/guide/

这是在android中读取JSON响应的指南: http://www.androidhive.info/2012/01/android-json-parsing-tutorial/

答案 1 :(得分:0)

只需覆盖WebViewClient中用于webview的onpagefinished方法。你只需要编写一些javascript来使用名称或id从html页面获取值,就像我们在简单的html页面中一样简单,形成url并使用js本身加载它

 String javascript;

 @Override
 public void onPageFinished(WebView view, String url) {
 super.onPageFinished(view, url);


    javascript="javascript:var yourValue=document.getElementById('tad_id').value;
    window.location = "form your url using yourValue here";"
    wv.loadUrl(javaScript);


 }

我正在使用它填写我的偏好文件中的表格,并且对我来说工作正常。