【问题标题】:Parsing html table using jsoup使用jsoup解析html表格
【发布时间】:2019-10-10 06:58:55
【问题描述】:

我正在尝试使用 jsoup 解析 HTML 表。我是 jsoup 的新手,我已经阅读了一些关于它的教程。我需要从该网站的每一列的表中提取值:https://www.basketball-reference.com/boxscores/pbp/201905160GSW.html。我尝试获取每个时间戳,但它只打印一个元素。这是我上次尝试的代码。

Document doc = Jsoup.connect("https://www.basketball-reference.com/boxscores/pbp/201905160GSW.html").get();         
Elements trs = doc.select("table");

for(Element tr : trs) {
    Elements tds = tr.getElementsByTag("td");
    Element td = tds.get(0);
    System.out.println(td.text());
}

【问题讨论】:

    标签: java html parsing web-scraping jsoup


    【解决方案1】:

    你了解你的代码吗?

    它选择所有表并将它们放入trs变量中:

    Elements trs = doc.select("table");

    然后遍历每个表:

    for(Element tr : trs) {

    它从每个表中选择所有单元格'td':

    Elements tds = tr.getElementsByTag("td");

    那么它只需要第一个单元格

    Element td = tds.get(0);

    并打印其内容

    System.out.println(td.text());

    其中一些操作不是必需的,但现在有了这样的解释,您应该有一个良好的开端。

    【讨论】:

    • 感谢您的解释。但是我尝试使用 doc.select("table tr") 迭代每一行,它适用于我所做的其他一些表,但不适用于这个表。我不是很擅长html,所以我不知道如何迭代每一行。
    猜你喜欢
    • 2014-01-01
    • 1970-01-01
    • 2015-08-17
    • 2018-09-04
    • 2015-10-14
    • 2011-07-20
    相关资源
    最近更新 更多