从网站上读取信息的Java程序

从网站上读取信息的Java程序,java,parsing,Java,Parsing,我正在用Java编写一个程序,它将帮助我的朋友追踪“幻想大学篮球”联盟。我正在努力寻找最好的实现来自动更新每个球员的统计数据 作为一些背景,幻想联盟中的每个人每天都会根据他们征召的大学篮球运动员在那一周获得的统计数据获得分数。现在,我习惯性地这样做: 1:转到球员的ESPN个人资料 ESPN通过一个基于随机且唯一的玩家ID号的URL来跟踪单个玩家的统计数据。弗兰克·卡明斯基的身份证是56759,所以他的ESPN档案是:。我们可以假设,当球员被选秀时,用户将输入球员的ESPN ID,并且在更新统计

我正在用Java编写一个程序,它将帮助我的朋友追踪“幻想大学篮球”联盟。我正在努力寻找最好的实现来自动更新每个球员的统计数据

作为一些背景,幻想联盟中的每个人每天都会根据他们征召的大学篮球运动员在那一周获得的统计数据获得分数。现在,我习惯性地这样做:

1:转到球员的ESPN个人资料

ESPN通过一个基于随机且唯一的玩家ID号的URL来跟踪单个玩家的统计数据。弗兰克·卡明斯基的身份证是56759,所以他的ESPN档案是:。我们可以假设,当球员被选秀时,用户将输入球员的ESPN ID,并且在更新统计数据时,我们将获得该信息

2:解析HTML页面以获取相关统计信息

查看上面的URL-重要信息在“2014-2015游戏日志”部分。我想获得最新游戏的PTS、REB、AST、BLK、STL、PF,并在我的程序中的其他地方使用

解决这个问题的最佳方法是什么?

我的第一反应是在URL上使用.openStream(),但这需要进行大量仔细的字符串解析。HTML真的不是一行一行的好


我听说过jsoup,但从未使用过它。如果这里的人认为这是最好的方法,我很乐意学习如何使用它

使用Jsoup,它很容易学习,适合工作

JSoup网站上有一个很好的教程

请看这里:

然后用这里介绍的方法解析文档:

我推荐 这是一个外部库,但它很容易使用和学习。通常它是用来测试网站的,但实际上它是多用途的

Driver driver = new ChromeDriver();
driver.get("http://yoursitehere.iamnotarealsite");
这就是打开chrome浏览器并导航到您的站点的代码。要查找元素,可以执行以下操作:

WebElement stats=driver.findElement(By.cssSelector("div#statsOrSomething"));
您可以在WebElements上使用标准的get文本函数:

stats.getText();//Gets players stats
我还提到过它有很多语言绑定,包括Java吗?另外:我不为selenium或其母公司工作,所以这不是一个无耻的插头