爬虫集成到web中:乔丹支持退役球星数据

  • 时间:2024-01-16 09:05:42|
  • 来源:NBA直播吧

爬虫烧瓶一、前言

我之前写过一个自动生成球员生涯数据的程序。 大家的反响都很好,我很高兴。 有些人问我如何做、如何学习,有些人建议将其集成到网络中。

其实一开始我也考虑过将其集成到网络中,但由于时间有限,我只是简单地做了一下。 没想到引起了大家的关注和建议。 所以这次我做了升级,集成到了web中!

我们先看一下效果,以本地为例:

:5800//?=乔丹&游戏=1

:5800//?=科比&比赛=1

2.环境配置

.语言: .编辑器:.Web框架:Flask.数据可视化:

项目主目录下有一个.txt文件,里面包含了项目所需的依赖包。 只需要在终端中输入以下命令即可

pip install -r requirements.txt

依赖包会自动安装

3、功能升级

升级后,新增以下功能:

3.1 将爬虫集成到网络中,通过在浏览器中输入球队名称来获取球队的所有球员

:5800/nba/team?name=猛龙队

3.2 支持所有现役球员的职业生涯数据曲线,包括常规赛和季后赛数据

伦纳德常规赛和季后赛数据

:5800/nba/?game=0&=-3568.html&color=

当game=0时,获取常规赛数据,当game=1时,获取季后赛数据。

不得不吐槽一下nba最矮的球员现役,公众号只支持上传2M以下的gif。 不支持大gif,小gif看不清楚……

所以很多时候把视频裁剪成gif需要十几二十分钟nba最矮的球员现役,很蛋疼...如果谁有好的方法请联系我!

3.3 还支持退役球星数据,比如篮球第一流氓乔丹。

3.4 支持更改背景颜色和图片下载

例如,对于魔术师约翰逊的数据,请求时添加颜色参数

:5800//?=魔术师&游戏=1&颜色=

根据你传过来的颜色设置背景颜色nba最矮的球员现役,左上角有下载按钮。 点击下载。 是不是很强大啊!

4. 代码解释 4.1 Flask部分

请求地址:共有三个请求地址。 代码位于 urls.py 中。 您可以根据个人喜好修改地址。

其中,按照球队获取球员的地址为/nba/team/,现役球员的职业数据为/nba//,退役球星的数据为///

请求参数:代码所在forms.py

具体应该传递哪些参数,代码在上面。 其中颜色是可选的!

运行项目:项目主目录下有一个run.py文件,运行即可!

4.2 爬虫部分

前面的程序捕获了Hupu上的数据。 上有一个bug:每个玩家都有一份2017年编译的额外数据(目前尚不清楚它的用途)。 此问题已得到纠正。 而且虎扑不支持历史玩家数据查询,所以现在新增了一个网站。 代码部分如下:

主要涉及到HTML提取技术,在之前的文章中已经介绍过,不再赘述。

4.3 数据可视化部分

这部分主要是集成到flask中。 一些集成文件是默认文件。 新的部分是发送ajax请求并生成玩家曲线。这里就不多说了,因为我在之前的文章中已经介绍了用法。