首页 > 编程语言 > 详细

Python 爬虫-获得大学排名

时间:2017-07-29 23:54:19      阅读:211      评论:0      收藏:0      [点我收藏+]

2017-07-29 23:20:24

主要技术路线:requests+bs4+格式化输出

import requests
from bs4 import BeautifulSoup

url = http://www.zuihaodaxue.com/zuihaodaxuepaiming2017.html

def gethtml(url):
    # 打开网页有风险,需要使用try-except语句进行风险控制
    kv = {user-agent:Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0}
    try:
        r = requests.get(url,headers=kv)
        r.raise_for_status()   # 如果打开失败,则会抛出一个HttpError异常
        # encoding是从header中分析出来的编码方式,apparent_encoding是 从内容分析出的编码方式
        r.encoding=r.apparent_encoding
        return r
    except:
        print("打开失败")
        return -1

def gettext(r):
    soup = BeautifulSoup(r.text,html.parser)
    #print(soup.prettify())
    tr = soup(tr)
    ls = list()
    lst = list()
    for i in range(4):
        th = tr[0](th)
        lst.append(th[i].string)
    ls.append(lst)
    for i in range(1,len(tr)):
        td = tr[i](td)
        lst=list()
        lst.append(i)
        for k in range(1,4):
            lst.append(td[k].string)
        ls.append(lst)
    return ls

def printtext(ls):
    for i in ls:
         print({0:^10}\t{1:{3}^10}\t{2:^10}.format(i[0],i[1],i[2],chr(12288)))

if __name__ ==__main__:
    r = gethtml(url)
    ls = gettext(r)
    printtext(ls)

 

Python 爬虫-获得大学排名

原文:http://www.cnblogs.com/TIMHY/p/7257915.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!