从html提取特定的<div>类到webview </div>

时间:2013-09-07 22:42:09

标签: android

所以我正在开发这个Android应用程序来捎带学校网页并检索html文档中的特定内容。问题是,当我在android中使用webview时,我只允许整个页面。任何人都可以帮助我理解如何获取HTML页面的特定部分?例如,从我下面的代码中包含的网页,我有

中的一小段文字
<div class="content"></div> 

我希望这是唯一出现在webview上的东西。有什么建议?提前致谢!

import android.annotation.SuppressLint; 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

@SuppressLint("SetJavaScriptEnabled")
public class accounts_activity_id extends Activity{


private WebView webView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.accounts_activity_id_main);
    Initialize();
}

private void Initialize(){

    WebView mainWebView = (WebView) findViewById(R.id.webView1);

    WebSettings webSettings = mainWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);

    mainWebView.setWebViewClient(new MyCustomWebViewClient());
    mainWebView.loadUrl("http://www.depauw.edu/it/onecard/");

    mainWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
}

private class MyCustomWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl("http://www.depauw.edu/it/onecard/");
        return true;
    }
}
}

1 个答案:

答案 0 :(得分:0)

我担心你会走错路。您不应直接在WebView中打开网页,而应下载网页并提取相关信息,然后在WebView中显示该信息。这通常称为刮擦。

您可以通过在Android中手动下载带有HttpURLConnection的网页来执行此操作,也可以使用可以为您完成大部分工作的众多Java库之一(例如jsoup)。