一个用于在关系型数据库中管理和更新NFL数据的库。
项目描述
模块nfldb提供命令行工具和库,用于维护和查询包含逐场NFL数据的关联型数据库。数据从nflgame导入,而nflgame的数据又来自NFL.com实时GameCenter页面的JSON源。这些数据包括但不限于比赛日程、比分、阵容以及自2009年以来每个赛季的常规赛、季后赛和预赛季比赛的逐场数据。
以下是一个小例子,展示如何使用nfldb找到2012赛季前五名传球手
#!python import nfldb db = nfldb.connect() q = nfldb.Query(db) q.game(season_year=2012, season_type='Regular') for pp in q.sort('passing_yds').limit(5).as_aggregate(): print pp.player, pp.passing_yds
输出如下
[andrew@Liger ~] python2 top-five.py Drew Brees (NO, QB) 5177 Matthew Stafford (DET, QB) 4965 Tony Romo (DAL, QB) 4903 Tom Brady (NE, QB) 4799 Matt Ryan (ATL, QB) 4719
在理论上,nfldb和nflgame提供访问相同的数据。区别在于执行方式。为了在nflgame中搜索数据,需要从磁盘读取一个大型JSON文件并将其加载到Python数据结构中,这对于每场比赛都是必要的。相反,nfldb的数据存储在关系型数据库中,其搜索和检索速度比nflgame快几个数量级。此外,nfldb中数据的关联式组织允许通过方便的查询接口搜索NFL比赛数据。
可以通过运行此模块包含的nfldb-update脚本来更新数据库,以实时数据更新活跃比赛,您可以根据需要频繁ping NFL.com。注意:JSON数据本身每15秒更新一次,因此如果运行nfldb-update的速度超过这个,将会造成浪费。阵容更新至少每12小时自动进行一次。
nfldb 拥有全面的API文档以及一个包含示例的维基百科。
nfldb 可以与nflvid结合使用,搜索和观看NFL比赛录像。
如果您需要帮助,请加入我们在FreeNode上的IRC频道 #nflgame。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
nfldb-0.2.17.tar.gz (1.3 MB 查看哈希值)
构建分发
nfldb-0.2.17.linux-x86_64.exe (1.4 MB 查看哈希值)