maxalmonte14/nfl-scores

一个用于获取NFL比赛实时数据的命令行界面(CLI)。

安装: 19

依赖项: 0

建议者: 0

安全: 0

星标: 15

关注者: 4

分支: 0

开放问题: 0

类型:项目

v1.3.1 2018-11-02 14:01 UTC

This package is auto-updated.

Last update: 2024-09-29 05:21:18 UTC


README

Build Status Scrutinizer Code Quality Code Coverage Build Status StyleCI License: MIT

NFL-Scores 是一个 CLI 程序,允许您查看直播的 NFL 比赛得分,以及当天的比赛列表和当前的周赛程。

需求

PHP >= 7.1.3

安装

composer require "maxalmonte14/nfl-scores"

如何使用

获取所有实时比赛

php nfl-scores live

这将显示以下内容。

BAL VS BUF @ M&T Bank Stadium
3rd Quarter | 13:48 | BAL 1st & 10
+-----+----+----+---+---+----+----+
|     | 1  | 2  | 3 | 4 | OT | T  |
+-----+----+----+---+---+----+----+
| BAL | 14 | 12 | 0 | 0 | 0  | 26 |
| BUF | 0  | 0  | 0 | 0 | 0  | 0  |
+-----+----+----+---+---+----+----+


CLE VS PIT @ FirstEnergy Stadium
3rd Quarter | 08:24 | PIT 1st & 10
+-----+---+---+---+---+----+----+
|     | 1 | 2 | 3 | 4 | OT | T  |
+-----+---+---+---+---+----+----+
| CLE | 0 | 0 | 7 | 0 | 0  | 7  |
| PIT | 0 | 7 | 7 | 0 | 0  | 14 |
+-----+---+---+---+---+----+----+

您可以看到正在比赛的球队、哪个体育场、当前季度、时间、控球方、当前进攻次数和剩余码数。不错吧?

获取您最喜欢的球队实时比赛

您可以通过将您的球队缩写作为参数传递给 live 命令来获取一场特定的实时比赛。

php nfl-scores live CLE

现在您可以在终端上看到克利夫兰布朗队的实时比赛了!

CLE VS PIT @ FirstEnergy Stadium
3rd Quarter | 08:24 | PIT 1st & 10
+-----+---+---+---+---+----+----+
|     | 1 | 2 | 3 | 4 | OT | T  |
+-----+---+---+---+---+----+----+
| CLE | 0 | 0 | 7 | 0 | 0  | 7  |
| PIT | 0 | 7 | 7 | 0 | 0  | 14 |
+-----+---+---+---+---+----+----+

获取今天的比赛列表

如果您想查看哪些球队将要比赛,可以使用 today 命令。

php nfl-scores today

这将显示以下输出。

+------+---------+-------------------------------+------------+-------------+
| Home | Visitor | Stadium                       | Date       | Hour        |
+------+---------+-------------------------------+------------+-------------+
| ATL  | NO      | Mercedes-Benz Stadium         | 09/23/2018 | 13:00:00 ET |
| LA   | LAC     | Los Angeles Memorial Coliseum | 09/23/2018 | 16:05:00 ET |
| ARI  | CHI     | State Farm Stadium            | 09/23/2018 | 16:25:00 ET |
| SEA  | DAL     | CenturyLink Field             | 09/23/2018 | 16:25:00 ET |
| DET  | NE      | Ford Field                    | 09/23/2018 | 20:20:00 ET |
| BAL  | DEN     | M&T Bank Stadium              | 09/23/2018 | 13:00:00 ET |
| CAR  | CIN     | Bank of America Stadium       | 09/23/2018 | 13:00:00 ET |
| HOU  | NYG     | NRG Stadium                   | 09/23/2018 | 13:00:00 ET |
| JAX  | TEN     | TIAA Bank Field               | 09/23/2018 | 13:00:00 ET |
| KC   | SF      | Arrowhead Stadium             | 09/23/2018 | 13:00:00 ET |
| MIA  | OAK     | Hard Rock Stadium             | 09/23/2018 | 13:00:00 ET |
| MIN  | BUF     | U.S. Bank Stadium             | 09/23/2018 | 13:00:00 ET |
| PHI  | IND     | Lincoln Financial Field       | 09/23/2018 | 13:00:00 ET |
| WAS  | GB      | FedExField                    | 09/23/2018 | 13:00:00 ET |
+------+---------+-------------------------------+------------+-------------+

获取今天的已结束比赛

live 命令不会显示已结束的比赛,因此,如果您想了解一场比赛的最终结果,应使用 finished 命令。

php nfl-scores finished

输出将如下所示

PHI VS ATL @ Lincoln Financial Field
+-----+---+---+---+---+----+----+
|     | 1 | 2 | 3 | 4 | OT | T  |
+-----+---+---+---+---+----+----+
| PHI | 0 | 3 | 7 | 8 | 0  | 18 |
| ATL | 3 | 3 | 0 | 6 | 0  | 12 |
+-----+---+---+---+---+----+----+

BAL VS BUF @ M&T Bank Stadium
+-----+----+----+----+---+----+----+
|     | 1  | 2  | 3  | 4 | OT | T  |
+-----+----+----+----+---+----+----+
| BAL | 14 | 12 | 14 | 8 | 0  | 47 |
| BUF | 0  | 0  | 3  | 0 | 0  | 3  |
+-----+----+----+----+---+----+----+

您也可以通过将参数传递给 finished 命令来获取一场特定的比赛。

php nfl-scores finished PHI

输出将如下所示

PHI VS ATL @ Lincoln Financial Field
+-----+---+---+---+---+----+----+
|     | 1 | 2 | 3 | 4 | OT | T  |
+-----+---+---+---+---+----+----+
| PHI | 0 | 3 | 7 | 8 | 0  | 18 |
| ATL | 3 | 3 | 0 | 6 | 0  | 12 |
+-----+---+---+---+---+----+----+

获取本周的比赛

week 命令将显示当前周的比赛。

php nfl-scores week

注意:请记住,NFL的一周由周四、周日和下周的周一组成。

输出将类似于以下内容。

+------+---------+-------------------------------+------------+-------------+
| Home | Visitor | Stadium                       | Date       | Hour        |
+------+---------+-------------------------------+------------+-------------+
| ATL  | NO      | Mercedes-Benz Stadium         | 09/23/2018 | 13:00:00 ET |
| LA   | LAC     | Los Angeles Memorial Coliseum | 09/23/2018 | 16:05:00 ET |
| ARI  | CHI     | State Farm Stadium            | 09/23/2018 | 16:25:00 ET |
| SEA  | DAL     | CenturyLink Field             | 09/23/2018 | 16:25:00 ET |
| DET  | NE      | Ford Field                    | 09/23/2018 | 20:20:00 ET |
| BAL  | DEN     | M&T Bank Stadium              | 09/23/2018 | 13:00:00 ET |
| CAR  | CIN     | Bank of America Stadium       | 09/23/2018 | 13:00:00 ET |
| HOU  | NYG     | NRG Stadium                   | 09/23/2018 | 13:00:00 ET |
| JAX  | TEN     | TIAA Bank Field               | 09/23/2018 | 13:00:00 ET |
| KC   | SF      | Arrowhead Stadium             | 09/23/2018 | 13:00:00 ET |
| MIA  | OAK     | Hard Rock Stadium             | 09/23/2018 | 13:00:00 ET |
| MIN  | BUF     | U.S. Bank Stadium             | 09/23/2018 | 13:00:00 ET |
| PHI  | IND     | Lincoln Financial Field       | 09/23/2018 | 13:00:00 ET |
| WAS  | GB      | FedExField                    | 09/23/2018 | 13:00:00 ET |
| TB   | PIT     | Raymond James Stadium         | 09/24/2018 | 20:15:00 ET |
| CLE  | NYJ     | FirstEnergy Stadium           | 09/20/2018 | 20:20:00 ET |
+------+---------+-------------------------------+------------+-------------+

该程序不能做什么

该程序有其局限性,NFL没有提供开放API以在任意时间获取精确数据,因此我使用NFL Game Center JSON文件,该文件会定期更新以获取CLI显示的数据。

因此,该程序不能执行以下操作

  • 显示当前NFL周之前比赛的详细信息。
  • 显示球员统计数据,因为这些数据不包含在JSON文件中。

该程序不能做什么但可以做!

我非常希望在未来的版本中添加很多功能,以下是一些示例

  • 以更美观的方式显示输出。每个人都喜欢美好的事物!
  • 实时更新数据。目前,每次您运行实时命令时,程序都会显示当时的时间得分,您需要反复运行命令以查看更新后的数据。
  • 每次球队得分或比赛结束时显示通知。
  • 将过去的比赛存储在数据库中。

该程序可以改进的地方

有很多事情可以提高该程序,以下是一些示例

  • 重构!当你重构时,一切都会变得更好。
  • 添加一些功能测试。当然,这个程序有一个测试套件,但我专注于单元测试,所以添加一些功能测试是必须的任务。
  • 加速。每个人都喜欢快的东西。

贡献

你喜欢这个小应用程序吗?你遵循PSR标准吗?对我来说听起来很好!发送给我一个PR,并别忘了添加一些测试。