Jsoup找不到指定的元素

时间:2013-05-15 16:59:03

标签: android html parsing jsoup

我正在尝试编写一个小程序(不介意混乱)显示最后一个“你知道吗?”来自维基百科。但由于某些原因,Jsoup找不到它。

有什么问题?


部分代码:

Document document = null;
try {
    document = Jsoup.connect("https://en.wikipedia.org/wiki/Portal:Mathematics/Did_you_know/1").get();
} catch (IOException e) {
    e.printStackTrace();
}
//Document document = Jsoup.parse("test.html");
if (document != null) {
    Element element = document.select("div#mw-content-text").first();
    if (element == null) {
        message = "empty";
    } else {
        message = element.html();
    }
}

维基百科源代码的一部分:

<div id="mw-content-text" lang="en" dir="ltr" class="mw-content-ltr"><p>...that outstanding mathematician <a href="/wiki/Grigori_Perelman" title="Grigori Perelman">Grigori Perelman</a> was offered a <a href="/wiki/Fields_Medal" title="Fields Medal">Fields Medal</a> in 2006, in part for his proof of the <a href="/wiki/Poincar%C3%A9_conjecture" title="Poincaré conjecture">Poincaré conjecture</a>, which he declined?</p>

  

https://en.wikipedia.org/wiki/Portal:Mathematics/Did_you_know/1

1 个答案:

答案 0 :(得分:1)

您的代码在桌面上运行良好。根据互联网访问权限检查您的Android设置。另外,检查真正的问题在哪里也是个好主意。

一些提示:

  • 用记录器替换e.printStackTrace();
  • message变量的值也写入记录器
  • 您使用的是AsyncTask吗?
  • 是否有任何错误,异常或类似内容?