2

我想知道如何在 HTML 的标签中获取信息。我不知道我是否做得对,因为它不返回任何信息。我向您展示我的android代码,看看您是否可以帮助我。

代码类:

    public class WebView1 extends Activity {
        /** Called when the activity is first created. */   
WebView browse;         
        @Override
        protected void onCreate(Bundle savedInstanceState)      {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.webview1);
         browse = (WebView) findViewById(R.id.webview1);                     

         browse.setWebChromeClient(new WebChromeClient());

         browse.setWebViewClient(new WebViewClient() {
                @Override  
                public void onPageFinished(WebView view, String url) {
                    File input = new File("file:///android_asset/ejemploWebview.html");
                    Document doc = null;
                    try {
                        doc = Jsoup.parse(input, "UTF-8");
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }

                    //http://jsoup.org/cookbook/input/load-document-from-url
                    //Document doc = Jsoup.connect("http://example.com/").get();

                    Element content = doc.getElementById("div");
                    Elements links = content.getElementsByTag("id");
                    String linkId = links.attr("manolo");
                    System.out.print(linkId); //I need that it return Hiiii!
                    }
            });     } }

代码HTML:

 <html>
    <head>
    </head>
    <div id="james">hellooo!</div>
    <div id="paco">byeee!</div>
    <div id="manolo">Hiii!</div>
    </html>

我希望我解释正确!谢谢!;)

4

1 回答 1

1

就个人而言,在使用选择器时,我总是从 JSoup 获得更好的结果,详见此处

从您给出的示例中,您似乎想通过它们的 ID 检索 div 值,您可以使用它:

el#id:带有ID的元素,例如div#logo

因此,要么使用上述 3 次,要么只选择 div 并迭代它们,做任何你需要做的事情。

希望这可以帮助。

PS,我发现的最简单的事情是在你调用之后放置一个断点doc = Jsoup.parse(input, "UTF-8");,然后使用你的 IDE 的表达式构建器来确定哪个选择器可以满足你的需求:)

于 2012-06-05T22:54:54.793 回答