zoukankan      html  css  js  c++  java
  • 爬虫日记-最好大学排名实例

    实例爬取

    import  requests
    from bs4 import  BeautifulSoup
    import bs4
    
    def getHTMLText(url): # 这个函数的作用是就是获取url的内容。
        try:
            r=requests.get(url,timeout =30)
            r.raise_for_status()
            r.encoding=r.apparent_encoding
            return r.text
        except:
            return ''
    
    
    def fillUnivList(ulist,html):  # 这个函数用来把全部文本中需要的内容提取出来
        soup=BeautifulSoup(html,'html.parser')
        print(soup)
        for tr in soup.find('tbody').children:
            if isinstance(tr,bs4.element.Tag):
                tds=tr('td')
                ulist.append([tds[0].string,tds[1].string,tds[3].string])
    
    
    def printUnivList(ulist,num): # 用来把提取出来的数据展示出来
        print('{:^10}	{:^6}	{:^18}'.format('排名','学校名称','总分'))
        for i in range(num):
            u=ulist[i]
            print('{:^10}	{:^6}	{:^18}'.format(u[0],u[1],u[2]))
    
    
    
    def main():  # 主函数,调用,用来传入参数,和调用其他函数
        uinfo =[]
        url='http://www.zuihaodaxue.com/zuihaodaxuepaiming2019.html'
        html=getHTMLText(url)
        fillUnivList(uinfo,html)
        printUnivList(uinfo,20)
    main()
    

    排名 学校名称 总分
    1 清华大学 94.6
    2 北京大学 76.5
    3 浙江大学 72.9
    4 上海交通大学 72.1
    5 复旦大学 65.6
    6 中国科学技术大学 60.9
    7 华中科技大学 58.9
    7 南京大学 58.9
    9 中山大学 58.2
    10 哈尔滨工业大学 56.7
    11 北京航空航天大学 56.3
    12 武汉大学 56.2
    13 同济大学 55.7
    14 西安交通大学 55.0
    15 四川大学 54.4
    16 北京理工大学 54.0
    17 东南大学 53.6
    18 南开大学 52.8
    19 天津大学 52.3
    20 华南理工大学 52.0

  • 相关阅读:
    wikioi 1002 旁路
    OS X升级到10.10使用后pod故障解决方案出现
    Python challenge 3
    maven 编
    独立博客网站FansUnion.cn操作2多年的经验和教训以及未来计划
    Wakelock API详解
    智遥工作流——会签与多人审批区别
    mysql 参数optimizer_switch
    OpenRisc-31-关于在设计具有DMA功能的ipcore时的虚实地址转换问题的分析与解决
    TROUBLE SHOOTING: FRM-30425
  • 原文地址:https://www.cnblogs.com/chanyuli/p/11408045.html
Copyright © 2011-2022 走看看