公司动态

用Python爬虫获取NBA球员的生涯数据

2024-07-29 阅读次数:

NBA球迷往往对球员的各项数据以及对应的排名很感兴趣,而basketball-reference.com这个网站的数据十分详尽。为方便浏览,我在github建了一个项目,借助该网站提供的数据来汇总某个球员的最新生涯数据,项目链接在此。本文介绍一下思路和使用方法。

思路非常简单,首先使用requests库来抓取相关的网页,之后用beautifulsoup这个库来解析html文件,用以解析所需的数据。

首先从这里下载压缩包,解压后得到nbarecord.exe这个可执行文件。之后在Windows命令行中执行该文件,并将球员名字作为参数,就可以得到对应的各项统计数据。假设该可执行文件存储在E盘,若想获取詹姆斯的各项统计,可以执行如下命令获取:

 

程序运行时,会从网站爬取最新的数据,显示球员当前所获得的成就,并显示他最近需要超越的一些球员(最多显示之前20个球员)。**Last Time **这一栏显示上一次执行程序获取的该球员相应数据,这样一来可以了解到球员在最近的比赛后取得的进展。
注意:球员名字需要按照basketball-reference.com这个网站提供的资料来作为输入。

首先clone一份代码:

 

本项目用Python3编写,因此你需要一个Python3环境(或者用pyenv虚拟)。
请安装如下几个依赖库:

 

之后将球员名字作为参数来执行脚本,便可获取相应的数据:

 
 

如果拥有一个Linux环境,则可以通过,等工具,利用Linux管道,结合本程序,每天获取关注球员的最新数据,并将数据发送到自己的邮箱。实现也很简单,举例如下:
首先通过命令,打开编辑窗口,之后在编辑器里输入如下内容(请自行修改代码路径和自己的邮箱地址):

 

这样便可以在每天晚上20:00收到关于詹姆斯最新的生涯数据了(注意在自己邮箱里设置白名单,防止被当做垃圾邮件)。

平台注册入口