zoukankan      html  css  js  c++  java
  • NBA历史得分榜数据分析

    1、经过自己的学习,学会了网络爬虫和数据分析,虽然学的不是太好,但是能基本做出个样子来。

    2、由于本人是一个篮球迷,我选择将NBA历史总得分榜进行爬取并进行数据分析。找网站是一个非常难得事情,试过多个网站都没成功,于是我借鉴了其他同学使用的网站,终于找到了一个专门进行排名的网站“排行榜”       

    3、代码如下

    import requests
    from bs4 import BeautifulSoup
    url='https://sports.phb123.com/nba/31999.html'
    r=requests.get(url)
    try:
    r.raise_for_status()
    r.encoding=r.apparent_encoding
    data=r.text
    except:
    print('ERROR')
    soup=BeautifulSoup(data,'html.parser')
    a=soup.find_all('p')
    for i in range(6,20):
    print(a[i].get_text())
    import matplotlib.pyplot as plt
    list_1=['卡里姆·阿卜杜勒-贾巴尔','卡尔·马龙','科比·布莱恩特','迈克尔·乔丹','勒布朗·詹姆斯','威尔特·张伯伦','德克·诺维斯基','沙奎尔·奥尼尔','摩西·马龙','埃尔文·海耶斯'']
    list_2=['38387','36928','33643','32292','32162','31419','31419''28596','27409','27313']
    x=[]
    y=[]
    for i in range(9):
    y.append(list_1[i])
    x.append(list_2[i])
    x.reverse()
    y.reverse()
    plt.barh(range(len(y)),y,tick_label=x,color='blue')
    plt.rcParams['font.sans-serif'] = ['STKaiTi']
    plt.rcParams['axes.unicode_minus'] = False
    plt.title("NBA历史总得分排行榜")
    plt.show()

    4、结果

     发现横坐标人名有重叠,与时尚网查询,使用了


    fig = plt.figure(figsize=(12,4)) # 设置画布大小    结果如下:

     5、总结

    询问了赖宜霖、牛一鸣,并找到了合适的爬虫网站,python真的是很好玩   ,它功能 十分齐全 ,虽然操作上有点困难,但在仔细反复学习后  ,收获还是不小的

        如有可以改进的地方,还请大家多多指正!                   

                                                  

  • 相关阅读:
    第八章:数组
    第六章:循环结构(二)
    第五章:循环结构(一)
    第二章:变量 数据类型和运算符
    第三章:选择结构(一)
    第四章:选择结构(二)
    第一章:初识java
    第6章 数据筛选和排序
    第四章 实现Windows程序的数据更新
    第五章 实现Windows程序的数据绑定
  • 原文地址:https://www.cnblogs.com/qiuzy1209/p/12868447.html
Copyright © 2011-2022 走看看