爬虫爬取中国大学排名

 爬取该网站的排名并输出

 首先查看网页的源代码

 找到大学排名所在的位置

然后写代码

import requests
from bs4 import BeautifulSoup
import bs4
def gethtmltext(url):
    try:
        r=requests.get(url,timeout=30)      #返回url的内容限制时间30s
        r.raise_for_status()                #检查返回状态
        r.encoding=r.apparent_encoding      #转码
        return r.text                       #返回网页内容
    except:
        return ""
def fillunivlist(ulist,html):
    soup=BeautifulSoup(html,"html.parser") 
    for tr in soup.find('tbody').children:  #查找tbody的子节点
        if isinstance(tr,bs4.element.Tag):  #筛选是标签的内容
            tds=tr('td')                    #获得td的内容创建列表
            ulist.append([tds[0].string,tds[1].string,tds[2].string,tds[3].string])  #填充列表内容
def printunivlist(ulist,num):
    tplt="{0:^10}\t{1:{4}^10}\t{2:{4}^10}\t{3:^10}"           #获取输出格式中文按第四个格式填充
    print(tplt.format("排名","学校名称","地区","总分",chr(12288))) #表头输出以中文字符填充空白
    for i in range(num):
        u=ulist[i]
        print(tplt.format(u[0],u[1],u[2],u[3],chr(12288)))  #排名格式同上

def main():
    uinfo=[]
    url="http://www.zuihaodaxue.com/Greater_China_Ranking2019_0.html" #主函数获取链接
    html=gethtmltext(url)   #获得内容函数
    fillunivlist(uinfo,html) #内容处理函数
    printunivlist(uinfo,99)   #输出函数
main()

结果如下

 排名    	   学校名称   	    地区    	    总分    
    1     	 清华大学(北京) 	    大陆    	   100    
    2     	   北京大学   	    大陆    	   80.5   
    3     	  香港中文大学  	    香港    	   71.0   
    4     	   浙江大学   	    大陆    	   66.1   
    5     	   香港大学   	    香港    	   62.0   
    6     	 中国科学技术大学 	    大陆    	   61.4   
    7     	  上海交通大学  	    大陆    	   58.9   
    8     	   复旦大学   	    大陆    	   56.8   
    9     	 清华大学(新竹) 	    台湾    	   56.5   
    10    	   台湾大学   	    台湾    	   54.8   
    11    	  北京师范大学  	    大陆    	   53.9   
    12    	  香港城市大学  	    香港    	   50.1   
    13    	  香港科技大学  	    香港    	   49.8   
    14    	   南京大学   	    大陆    	   46.9   
    15    	  华中科技大学  	    大陆    	   44.3   
    16    	 中山大学(广州) 	    大陆    	   43.9   
    17    	  香港理工大学  	    香港    	   43.5   
    18    	 交通大学(新竹) 	    台湾    	   42.5   
    19    	 哈尔滨工业大学  	    大陆    	   42.0   
    20    	  澳门科技大学  	    澳门    	   41.9   
    21    	  中国医药大学  	    台湾    	   40.0   
    22    	   天津大学   	    大陆    	   39.8   
    23    	  西安交通大学  	    大陆    	   39.2   
    24    	   阳明大学   	    台湾    	   38.8   
    25    	   同济大学   	    大陆    	   38.5   
    26    	   东南大学   	    大陆    	   37.8   
    26    	   武汉大学   	    大陆    	   37.8   
    28    	  中国农业大学  	    大陆    	   37.6   
    29    	   四川大学   	    大陆    	   37.5   
    30    	   中南大学   	    大陆    	   36.7   
    31    	   成功大学   	    台湾    	   36.2   
    32    	   南开大学   	    大陆    	   35.5   
    33    	 北京航空航天大学 	    大陆    	   35.1   
    34    	  华南理工大学  	    大陆    	   34.7   
    35    	   中央大学   	    台湾    	   33.9   
    35    	   厦门大学   	    大陆    	   33.9   
    37    	  北京理工大学  	    大陆    	   33.8   
    38    	  电子科技大学  	    大陆    	   33.5   
    39    	   澳门大学   	    澳门    	   33.4   
    40    	   吉林大学   	    大陆    	   33.1   
    41    	  中国人民大学  	    大陆    	   32.6   
    42    	  南京理工大学  	    大陆    	   32.0   
    43    	  香港浸会大学  	    香港    	   31.8   
    44    	   山东大学   	    大陆    	   31.4   
    45    	 中山大学(高雄) 	    台湾    	   31.3   
    45    	  西北工业大学  	    大陆    	   31.3   
    47    	  台湾科技大学  	    台湾    	   31.1   
    48    	   长庚大学   	    台湾    	   30.6   
    49    	  北京科技大学  	    大陆    	   30.5   
    50    	  华东师范大学  	    大陆    	   30.3   
    50    	   苏州大学   	    大陆    	   30.3   
    52    	  大连理工大学  	    大陆    	   30.0   
    53    	  南京农业大学  	    大陆    	   28.6   
    54    	中国石油大学(北京)	    大陆    	   27.9   
    55    	  华东理工大学  	    大陆    	   27.7   
    56    	   湖南大学   	    大陆    	   27.6   
    57    	  台北医学大学  	    台湾    	   27.2   
    58    	  高雄医学大学  	    台湾    	   27.1   
    59    	 南京航空航天大学 	    大陆    	   27.0   
    60    	   重庆大学   	    大陆    	   26.7   
    61    	中国地质大学(北京)	    大陆    	   26.6   
    62    	   兰州大学   	    大陆    	   26.3   
    62    	  台湾师范大学  	    台湾    	   26.3   
    64    	   中兴大学   	    台湾    	   26.0   
    64    	  台北科技大学  	    台湾    	   26.0   
    66    	   东北大学   	    大陆    	   25.9   
    67    	  中国海洋大学  	    大陆    	   25.6   
    68    	  中国矿业大学  	    大陆    	   25.3   
    69    	  北京交通大学  	    大陆    	   25.0   
    69    	   上海大学   	    大陆    	   25.0   
    71    	  北京工业大学  	    大陆    	   24.9   
    71    	  天津医科大学  	    大陆    	   24.9   
    73    	 哈尔滨工程大学  	    大陆    	   24.3   
    74    	 上海中医药大学  	    大陆    	   24.1   
    75    	  华中农业大学  	    大陆    	   23.8   
    76    	  中国药科大学  	    大陆    	   23.5   
    77    	中国地质大学(武汉)	    大陆    	   23.1   
    78    	  北京化工大学  	    大陆    	   23.0   
    79    	 西北农林科技大学 	    大陆    	   22.8   
    80    	   河海大学   	    大陆    	   22.7   
    81    	   江南大学   	    大陆    	   22.6   
    82    	  北京邮电大学  	    大陆    	   22.5   
    83    	  武汉理工大学  	    大陆    	   22.4   
    84    	   中正大学   	    台湾    	   22.3   
    85    	  暨南国际大学  	    台湾    	   22.1   
    85    	 西安电子科技大学 	    大陆    	   22.1   
    87    	 北京中医药大学  	    大陆    	   22.0   
    88    	  东北师范大学  	    大陆    	   21.9   
    88    	   西北大学   	    大陆    	   21.9   
    90    	中国矿业大学(北京)	    大陆    	   21.8   
    91    	  上海财经大学  	    大陆    	   21.7   
    92    	  首都师范大学  	    大陆    	   20.7   
    92    	   暨南大学   	    大陆    	   20.7   
    94    	  南京师范大学  	    大陆    	   20.5   
    95    	  高雄师范大学  	    台湾    	   20.4   
    95    	   云南大学   	    大陆    	   20.4   
    97    	   中原大学   	    台湾    	   20.3   
    97    	  台湾海洋大学  	    台湾    	   20.3   
    99    	 东华大学(上海) 	    大陆    	   20.2   

 

 

 

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值