zoukankan      html  css  js  c++  java
  • 数据分析——医科大学排名

    经过之前的慕课内容和b站上的一些知识内容的学习,决定制作一个2019中国最好医科大学的数据分析。

    之前试着爬过其他的网站...一些爬出来的排版真的是逼疯我了= =  还有另一些网站自己就是图表形式的数据展示...

    找网站着实费了那么一丢丢时间...

    于是我就换了最好大学网。

    (这多好看!)

    首先通过以前的爬虫知识利用requests库和BeautifulSoup库,有选择的爬取学校名称和总分。

    得到x,y轴数据之后然后再利用matplotlib库制作条形图。

    import requests
    from bs4 import BeautifulSoup
    import bs4
    import matplotlib.pyplot as plt
    
    url='http://www.zuihaodaxue.com/zuihaoyikedaxuepaiming2019.html'
    ulist=[]
    try:
        r=requests.get(url)
        r.raise_for_status()
        r.encoding=r.apparent_encoding
        message=r.text
    except:
        print('Error!')
            
    soup=BeautifulSoup(message,'html.parser')
    for tr in soup.find('tbody').children:
        if isinstance(tr,bs4.element.Tag):
            tds=tr('td')
            ulist.append([tds[1].string,tds[3].string])
    x=[]
    y=[]
    for i in range(15):
        x.append(ulist[i][0])
        y.append(ulist[i][1])
        
    x.reverse()
    y.reverse()
    plt.barh(range(len(y)),y,tick_label=x,color='purple')
    plt.rcParams['font.sans-serif'] = ['STKaiTi']
    plt.rcParams['axes.unicode_minus'] = False
    plt.title("中国最好医科大学排名2019")
    plt.show()

    最后效果如上图。

    本人水平有限,如有不足之处请老师同学多多指点。

  • 相关阅读:
    【搜索结果】高亮显示
    【搜索面板】排序单选
    【搜索面板】价格信息单选
    根据接口返回的数据重组数组
    Array.from
    获取指定字符串第n次出现的位置索引
    Object
    验证码倒计时
    iview Form表单正则验证
    网络图片转base64格式
  • 原文地址:https://www.cnblogs.com/Wsy3328/p/12862897.html
Copyright © 2011-2022 走看看