我正在尝试从多个页面获取大量数据,但它并不总是一致的。这是我正在使用的html的一个例子!:
我需要得到类似的东西:团队|团队|结果全部变成不同的变量或列表。
我只是需要一些帮助才能开始,因为我在多个页面上使用的主表在每个人身上都不一样。
到目前为止我的java:
try {
Document team_page = Jsoup.connect("http://www.soccerstats.com/team.asp?league=" + league + "&teamid=" + teamNumber).get();
Element home_team = team_page.select("[class=homeTitle]").first();
String teamName = home_team.text();
System.out.println(teamName + "'s Latest Results: ");
Elements main_page = team_page.select("[class=stat]");
System.out.println(main_page);
} catch (IOException e) {
System.out.println("unable to parse content");
}
我从我的计划的不同方法中获得联盟和队友。
谢谢!
答案 0 :(得分:0)
是。这是网页抓取的问题之一。
您必须找出一个或多个启发式方法,这些启发式方法将在您需要访问的所有页面中提取所需的信息。没有灵丹妙药。只是努力工作。 (如果网站更改其页面布局,您将不得不重新执行此操作。)
更好的想法是使用站点或站点的RESTful API请求信息为XML或JSON ...假设它们存在并且可供您使用。
(如果您继续使用网络抓取方法,请检查网站的服务条款,以确保您的活动可以接受。)