nba数据网全部数据(虎扑nba数据网)

本篇文章给大家谈谈nba数据网全部数据,以及虎扑nba数据网的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

文章详情介绍:

一学就会一用不废系列:如何用Python获取NBA历史数据





入手Python后却不知道怎么拿来用,本篇文章将带你用Python来快速批量获取数据。

处理目标:用Python获取NBA历史得分排名前500的历史球星及得分数据。

前期准备:电脑安装Python,Pycharm软件(其他类似可视化处理界面,方便编程)

目标网站:http://stat-nba.com/(一个非常全面的NBA数据记录网站)

准备完成后,下面就开始我们的数据获取工作:首先,第一步泡一壶茶,或者倒一杯咖啡(非必要步骤),废话不说,言归正传,正式开始处理步骤。

首先,打开pycharm,新建项目,写好项目名称地址等基本信息。

本次数据获取过程中需要使用requests模块、网页文本解析模块etree、csv模块。所以在脚本文件中加入所需的模块。

依赖模块

pycharm构建的项目只提供了基础的模块内容,所以我们还需要在设置-设置-Python解析器中导入我们所需要的模块。

导入依赖模块

然后通过浏览器打开我们的目标网址:
http://stat-nba.com/query.php?page=0&QueryType=all&AllType=season&AT=tot&crtcol=pts&order=1#label_show_result

目标网址

网址信息中我们主要用到的信息主要是page信息,用来标识目标网址的页数。设置好页数之后,右键点击检查查看目标网页的原始代码。找到姓名节点及分数节点。

姓名节点及得分节点信息

在完成以上准备后,在脚本文件中编辑requests.get请求,主要包括url及请求的hearder信息。在url中定义一个用来控制当前页码的变量currentPage,自动获取时用来控制数据获取数量。

url请求

请求后的本档解析使用etree.HTML函数。

网页解析

再次回到解析的网页,分析发现用来控制表格数据的节点采用类来控制,例如:姓名所属的类为"normal player_name_out change_color col1 row*",得分所在的类为"current pts change_color col22 row *'",同时通过row的标号来标识排名编号,每页默认为20行(0-19)。

节点信息

所以再次回到脚本文件,设置解析的表达式对数据进行解析,通过currentRow变量来存储当前排名位置。

数据解析

最后,通过while加for循环的方式批量下载数据,并保存为csv文档。

while-for

完成之后就可以随意处理数据了。

NBA得分排名前10


文/挽风行

近10年来各项数据统计排行,詹姆斯与杜兰特领跑得分榜

虎扑8月6日讯 今日,NBA官网给出最近10年来各项数据排行榜。

总得分:1.勒布朗-詹姆斯(19,550)2.凯文-杜兰特(19,445)3.詹姆斯-哈登(18,627)4.拉塞尔-威斯布鲁克(17,603)5.斯蒂芬-库里(16,315)6.拉马库斯-阿尔德里奇(15,213)7.德马尔-德罗赞(14,931)8.卡梅隆-安东尼(14,783)9.德维恩-韦德(13,243)10.布雷克-格里芬(13,200)。

总篮板:1.德安德烈-乔丹(8,653)2.德怀特-霍华德(8,077)3.安德烈-德拉蒙德(7,424)4.凯文-乐福(6,663)5.拉马库斯-阿尔德里奇(6,473)6.保罗-加索尔(6,218)7.德马库斯-考辛斯(6,131)8.马尔钦-戈塔特(6,105)9.扎克-兰多夫(6,009)10.勒布朗-詹姆斯(5,573)。

总助攻:1.拉塞尔-威斯布鲁克(6,462)2.克里斯-保罗(6,215)3.拉简-隆多(5,626)4.勒布朗-詹姆斯(5,503)5.约翰-沃尔(5,282)6.詹姆斯-哈登(4,743)7.凯尔-洛瑞(4,621)8.斯蒂芬-库里(4,588)9.朱-霍勒迪(4,151)10.杰夫-蒂格(4,145)。

总抢断:1.克里斯-保罗(1,396)2.拉塞尔-威斯布鲁克(1,332)3.斯蒂芬-库里(1,200)4.詹姆斯-哈登(1,189)5.特雷沃-阿里扎(1,161)6.赛迪斯-杨(1,142)7.勒布朗-詹姆斯(1,107)8.蒙塔-埃利斯(1,082)10.保罗-乔治(1,071)。

(编辑:李佳俊)

NBA数据统计的那些事儿

数据从来不会说谎,但要精确地描述每一场比赛的每一个时刻,必须拥有足够多的数据。NBA技术统计的发展历程,正是沿着这样的轨迹一路走来。

数据历史

手写时代 数据统计初显雏形

1946-47赛季,那时的联盟还叫做BAA(Basketball Association of America,全美篮球协会)。即便如此,这个里程碑的赛季仍然被看做是有关于NBA的一切的起点,一个伟大的联赛就此开始。

在那个年代,联盟一共只有11支球队,而到了1947年,其中的4支球队已经宣告解散。那时候的比赛条件,与如今的NBA根本无法同日而语。1946-47赛季,联盟的技术统计栏里只有几项数据有据可查:出手次数、命中次数,罚球次数、命中次数,助攻次数以及犯规次数。

至于两支球队在比赛中的数据,只能查到诸如某一方在比赛中出手的次数和命中数,其他的一切数据几乎为零。有迹可循的1946-47赛季总决赛第一场比赛,费城勇士84比71战胜芝加哥雄鹿。

全场比赛,勇士103投31中,而雄鹿仅仅只有129投26中。不要惊讶于如此之低的命中率,在这个赛季,联盟的11支球队场均出手次数高达93.2次,而命中率却只有可怜的27.9%,没有一支球队的场均命中率超过30%。

1950-51赛季,NBA的技术统计终于出现了一些显著的变化,球队和球员的篮板球数开始被联盟统计。虽然单单依靠手写和人工收集的方式所统计出的数据准确性遭到了如今很多数据专家的质疑,但这至少表明NBA的数据统计已经向前迈进了一大步。

有意思的是,在五六十年代,联盟并没有统一的数据统计标准,各支球队数据统计的能力有高低之别,数据的全面性和准确性都有所不同。

而数据统计对于当时叱咤联盟的球星还有一些“特殊优待”,譬如比尔·拉塞尔连续3场比赛篮板球都超过30个,埃尔金·贝勒连续4场比赛场均出手次数高达25.5次等等。

很快,NBA的技术统计已经可以精确到每名球员的场均得分、篮板、助攻以及犯规数。到此,NBA的技术统计已经初显雏形。

伟大变革 NBA进入全面数据时代

在这之前,不能不提的是1973-74赛季。从这一年开始,NBA开始统计盖帽数据,而这正是威尔特·张伯伦退役的第1年,比尔·拉塞尔退役的第5个赛季。

两位NBA历史上著名的盖帽达人,但却没有任何数据可以佐证。譬如“单场25次盖帽”、“职业生涯每场都有10次盖帽”这样的传说,也真的只能成为传说了。

时间来到1986年,这一年对于NBA的数据统计具有划时代的历史意义。正是从1986-87赛季开始,NBA联盟从每支球队、每场比赛以及每名球员都有了完整、准确的数据统计。

因此,翻开如今联盟不断刷新的历史记录,都会附上这样一段开场白:“从1986-87赛季NBA有技术统计以来,这是第N次有球员打出这样那样的数据。”

然而,问题也就随之而来。即使这个时候的数据统计再全面和精确,也无法掩盖统计项目太过单一的现实。得分、篮板、助攻、盖帽,这样的数据虽然直观,但却无法完全反映球员在比赛中的真实表现,而这对于想要研究对手的球队来说,也没有太多的参考价值。

当时,已经有一些人在试图改变这种局面。《体育画报》曾经披露了一份爵士球探对于乔丹的深度数据分析。其中介绍了譬如乔丹主导公牛每场比赛80%的进攻回合,乔丹更喜欢在右侧投篮,17%的进攻来自于拉开单打,83%的投篮方式是跳投等等这样的数据。但这样的研究方式,在联盟中并没有得到普及,直到下一个合适的时机出现。

网络时代 数据从此无所遁形

进入21世纪的网络时代,信息开始呈现爆炸性的发展,NBA的数据统计也同样如此。随着联盟各支球队、媒体,甚至球迷在内对于数据统计精细化和深入化的需求,各式各样的新式数据开始进入人们的视野。

在很多的数据网站中,人们看到的不再是简简单单的得分、篮板和助攻这些冰冷的数据,而是诸如一名球员在一场比赛中完成得分的方式所占的比重、他在每一个角度的投篮细节,传球的去向,他在关键时刻的效率值,他在场或不在场时球队的效率上升还是降低等等。

这时候,多数NBA球队的管理层也开始重视这些数据所能带来的改变。上世纪90年代,身为尼克斯主帅的帕特·莱利喜欢收集球员的一些冷门数据——球员出手的角度、篮板卡位的位置变化、如何干扰对手出手。而20年过去了,莱利已经不需要事必躬亲的去记录那些繁琐的数据,因为他可以向各大数据网站和公司订制服务,而联盟中的很多球队也都尝到了这种服务的甜头。

对于球迷而言,数据对于他们看球方式的改变也同样显而易见。NBA英文官网也开始为球迷推出高级数据服务,从最初的1946-47赛季每场比赛的各项统计,到之前只有NBA管理层才可以看得到的高级数据,球迷如今所能获取的数据,已经和NBA各支球队所获得的并无二致。

引述前NBA联盟总裁大卫·斯特恩先生的话:“既然这些数据如此伟大,为什么我们不能把它们分享给所有的球迷们?”

[ 作者:piikee   分类:NBA]