zoukankan      html  css  js  c++  java
  • python网络爬虫-中国大学排名定向爬虫

    爬虫定向爬取中国大学排名信息

    #!/usr/bin/python3
    import requests
    from bs4 import BeautifulSoup
    import bs4 
    
    #从网络上获取大学排名网页内容
    def get_HTML_text(url):
        try:
            r=requests.get(url,    timeout=30)
            r.raise_for_status()
            r.encoding=r.apparent_encoding
            return r.text
        except:
            return '该网页请求连接失败'
            
    #提取指定网页内容信息到合适的数据结构(二维列表存储信息)
    def fill_university_list(list_info,html):
        count=0
        soup=BeautifulSoup(html,'html.parser')
        for tr in soup.find('tbody').children:
            if isinstance(tr,bs4.element.Tag): #过滤body标签的子标签的字符串类型(非Tag类型)
                count+=1
                tds=tr('td')
                list_info.append([tds[0].string,tds[1].string,tds[2].string,tds[3].string,tds[4].string])
        return count
    #利用数据结构展示并输出结果
    def print_university_list(list_info,num):
        tplt='{0:^5}{1:{5}^20}{2:^17}{3:^5}{4:^18}'
        print(tplt.format('学校排名','学校名称','评分','所属类型','所在地域',chr(12288)))
        for i in range(num):
            u=list_info[i]
            print(tplt.format(u[0],u[1],u[2],u[3],u[4],chr(12288)))
    
    if __name__=="__main__":
        list_info=[]
        url='http://www.gaokaopai.com/paihang-otype-2.html?f=1&ly=bd&city=&cate=&batch_type='
        html=get_HTML_text(url)
        num=fill_university_list(list_info,html)
        print_university_list(list_info,num)
  • 相关阅读:
    SDN3
    SDN2
    SDN1
    软工实践5
    2019 SDN上机第二次作业
    2019 SDN上机第一次作业
    软件工程实践2019第五次作业
    软件工程实践2019第四次作业
    软件工程实践2019第三次作业
    软件工程实践2019第二次作业
  • 原文地址:https://www.cnblogs.com/liberate20/p/10779464.html
Copyright © 2011-2022 走看看