JSoup中的getElemenstByClass()函数问题

时间:2013-03-11 18:18:25

标签: android jsoup

我正在编写一个从网站smsmaza.in的html中获取文本短信的应用程序,我正在使用Jsoup来解析HTML。以下是困扰我的代码

            BLOG_URL="http://www.smsmaza.in/"; 
            Document document;
            document = Jsoup.connect(BLOG_URL).timeout(12000).get();
            Elements texts=document.getElementsByClass("sms");

当我打印texts.size()的值时,它变为零,这意味着没有选择任何内容。问题是什么? 提前谢谢。

以下是完整的计划: - http://pastecode.org/index.php/view/20317090

1 个答案:

答案 0 :(得分:1)

来自您使用的代码:

Document document=Jsoup.connect("http://www.smsmaza.in/").timeout(12000).get();
Elements texts=document.getElementsByClass("sms");
Log.e("sms", Integer.toString(texts.size()));

和logcat显示10 sms类被选中。所以它运作良好。

你不应该阻止setContentView。并在你的波纹管代码中:

if(texts.size()>0){
  int i=0;
  while(i<texts.size()){
     result[i]=texts.get(i).text();
     //you should increase your i here
  }
}

你应该在i++循环中增加while。 如果它没有帮助,试试这个:

int i = 0;
for(Element element : texts){
    result[i] = element.text();
    i++;
}