一直想做一篇和足球数据分析相关的文章, 结合 python 的爬虫和数据分析, 这里和大家分享一篇直播吧 3 万多足球运动的数据分析, 数据内容挺多的, 只是从其中提取部分进行比较和分析. 可视化部分用到的是 pyechart.
1, 分析直播吧球员数据页面:
image
1) 从域名看 (https://data.zhibo8.cc/html/player.html?player_id=1),player_id 这个参数代表了每个球员的编号, 这里看了一下, 最高编号大概到 9 万多, 中间会有断层. 爬虫的基本步骤就是循环获取每个球员页面的数据即可.
2) 然后再查看每个球员页面的数据如何获取, 一般这类数据都是通过 JSON 格式传入的, 所以只需要获取该域名的 JSON 数据即可. 通过右键 copy 该 JSON 的域名是: https://db.qiumibao.com/f/index/player?pid=1, 好了, 下一步就是直接跑代码了.
image
2, 运行爬虫代码:
image
就短短十几行代码, 就把 3 万 + 条球员记录存到 DataFrame 里面:
image
注: 如果某条记录报错, 可以直接从下一条记录再开始运行即可
3, 数据分析
3.1 通过年龄分析球员
爬取到的数据有 33102 条, 通过查看这批球员的年龄分布, 查看是否都是现役球员.
image
通过图表可以发现, 球员主要集中在 20-30 岁之间, 非常符合现役职业球员的分布.
当然了, 最主要还是看我们中国球员的年龄分布:
image
好像有点反规律哦, 为什么 23 岁以下的球员芳儿比 23,25 的球员多呢? 是不是因为 U23 政策, 哈哈.
3.2 哪个国家的球员最多
image
排名前 15 位的国家, 令人意外的是日本球员居然排名第五. 这个数量只能代表各个国家的顶级联赛职业球员数量, 无法代表实际足球人口, 这个比较可惜.
3.3 分析球员的进球数据
image
其中, 梅西 598,C 罗 600, 可见梅罗独一档有多恐怖, 排名第三的伊布只有 428, 而且伊布比他们还大好几岁.
3.4 三大球王数据对比
image
image
如果你对 Python 编程感兴趣, 那么记得来小编的 Python 学习扣群: 556370268, 这里有资源共享, 技术解答, 大家可以在一起交流 Python 编程经验, 还有小编整理的一份 Python 学习教程, 希望能帮助大家更好的学习 python.
来源: http://www.jianshu.com/p/574a4cb01b00