如何按类名获取元素

时间:2014-03-11 10:34:19

标签: java html jsoup

<td class="calendar_day" data-day-index="6">
  <div class="calendar_date">Mar. 1st</div>
  <div class="calendar_cell_content">
    <ul>
      <li class="">

我试图从class="calendar_date"(3月1日)获得价值。

我正在尝试解析保存在名为returned的String变量中的所有html代码。

Document doc = Jsoup.parse(returned);
Elements elem = doc.getElementsByClass("calendar_date");
String date = elem.first().text();

如果我这样做,date字符串为null

1 个答案:

答案 0 :(得分:1)

首先,您应该检查变量returned的内容是否与您在上面描述的相同。

然后,您应该尝试最新版本的jsoup 1.7.3。我运行了以下代码,它可以工作。

    String returned
            = "<td class=\"calendar_day\" data-day-index=\"6\">\n"
            + "  <div class=\"calendar_date\">Mar. 1st</div>\n"
            + "  <div class=\"calendar_cell_content\">\n"
            + "    <ul>\n"
            + "      <li class=\"\">";
    Document doc = Jsoup.parse(returned);
    Elements elem = doc.getElementsByClass("calendar_date");
    String date = elem.first().text();
    System.out.println(date);

结果符合您的预期:Mar. 1st