当前位置: 首页 > 知识库问答 >
问题:

jSoup使用网页中的td类标记获取数据

顾跃
2023-03-14

我想从http://www.futbol24.com/Live/?__igp=1

我想要时间,主队和客队的每一排的tbody表。因此,第一行的输出应该是:

08:30     Persipura Jayapura      Pelita Bandung Raya

我可以将这些元素的td类分别视为“status alt”、“home”和“guest”。

目前我已经尝试了下面的,但似乎没有输出任何东西。。。我做错了什么?

        matches = new ArrayList<Match>();

             //getHistory
            String website = "http://www.futbol24.com/Live/?__igp=1&LiveDate=20141104";
            Document doc = Jsoup.connect(website).get();

            Element tblHeader = doc.select("tbody").first();
            List<Match> data = new ArrayList<>();
            for (Element element1 : tblHeader.children()){

                Match match = new Match();
                match.setTimeOfMatch(element1.select("td.status.alt").text());
                match.setAwayTeam(element1.select("td.home").text());
                match.setHomeTeam(element1.select("td.guest").text());

                data.add(match);
                System.out.println(data.toString());

有人知道如何使用jSoup从表的每一行获取这些元素吗?

谢谢,

抢劫

共有1个答案

益富
2023-03-14

这个网站的内容似乎是通过AJAX生成的。因为它不是一个解释JavaScript的浏览器,所以它不能处理这个问题。要解决这个刮擦问题,您可能需要类似Selenium WebDrive的东西。我之前对一个广义的问题给出了一个更长的答案,所以请看这里:

Jsoup获取动态生成的HTML

 类似资料: