Javascript 在webview中显示网页的一部分

Javascript 在webview中显示网页的一部分,javascript,java,android,android-studio,webview,Javascript,Java,Android,Android Studio,Webview,请注意,这个问题不是重复的,因为它们排除了一些元素,而我只想包括一个元素 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); boolean validate=checkIfNet(); if(!validate){

请注意,这个问题不是重复的,因为它们排除了一些元素,而我只想包括一个元素

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    boolean validate=checkIfNet();
    if(!validate){
        finish();
    }
    setContentView(R.layout.activity_main);
    WebView wb = (WebView) findViewById(R.id.webview);
    wb.getSettings().setJavaScriptEnabled(true);
    wb.getSettings().setLoadWithOverviewMode(true);
    wb.getSettings().setUseWideViewPort(true);
    wb.getSettings().setJavaScriptEnabled(true);
    wb.getSettings().setBuiltInZoomControls(false);
    wb.getSettings().setPluginState(WebSettings.PluginState.ON);
    //wb.getSettings().setPluginsEnabled(true);
    //wb.setWebViewClient(new HelloWebViewClient());
    wb.loadUrl("http://www.dota2.com/leaderboards#europe");
}

private boolean checkIfNet() {
    boolean connected = false;
    ConnectivityManager connectivityManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
    if(connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED ||
            connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED) {
        //we are connected to a network
        connected = true;
    }
    else
        connected = false;
    return connected;
}
}


现在在获取
http://www.dota2.com/leaderboards#europe
它将获得完整的页面。我只想要那张桌子。带有
tbody id=“排行榜\u body”
的一个。我是新来的,所以请别烦我。提前感谢。

实际上,您希望从技术上实现的是删除html的某些部分

所发生的事情是,您的webview将获得您提供给它的URL的所有内容,这是http工作方式固有的。webview类不允许您选择只显示html的特定部分,因此您必须做的是在使用javascript呈现之前删除您不想要的内容

如果您想使用webview显示它,那么帖子中的解决方案就是您想要的,如果您想解析html并使用Android UI类呈现它,那么jsoup解决方案就是您想要的(不过这有点过分了)


如果你真的是新手,我的建议是:使用API。大概是吧。实际上,所有非静态应用程序(和网站)的工作方式都是使用API。介绍了为什么要这样做而不是使用jsoup进行解析。

使用获取页面的有趣内容,并为提取的内容构建自己的UI。我想我刚刚告诉过你我是noob。不管怎样,谢谢。我会浏览文档,想办法弄到那张该死的桌子。本教程应该会有帮助:这正是我需要的。谢谢,伙计。:)