maxalmonte14 / nfl-scores
一个用于获取NFL比赛实时数据的命令行界面(CLI)。
v1.3.1
2018-11-02 14:01 UTC
Requires
- php: ^7.1.3
- laravel-zero/framework: 5.7.*
- maxalmonte14/phpcollections: ^0.7.0
- zendframework/zend-text: ^2.7
Requires (Dev)
- mockery/mockery: ^1.0
- phpunit/phpunit: ^7.1
This package is auto-updated.
Last update: 2024-09-29 05:21:18 UTC
README
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,并别忘了添加一些测试。