最好大学定向爬虫

最好大学定向爬虫

刚刚写好的一篇博文莫名奇妙的没了,找不到了郁闷。。。。本来写完去吃饭,结果吃不成了。
不想说什么了

前提:

python的知识
如果不了解,移步北理工嵩天python基础课程或者廖雪峰python基础课程。

说明:

这个爬虫是跟着北理工嵩天教授的课程写的,如果有解释不清楚的直接在慕课搜嵩天python爬虫。

=============================分割线===================================

思路:

1.从url中获取html
2.从html中获取所需的信息
3.把信息输出出来

由于博主太饿了,不写具体解释了,直接贴上代码:

#CrawUnivRankingA.py
import requests
from bs4 import BeautifulSoup
import bs4

def getHTMLText(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")
    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}\t{:^6}\t{:^10}".format("排名","学校","总分"))
    for i in range(num):
        u = ulist[i]
        print ("{:^10}\t{:^6}\t{:^10}".format(u[0],u[1],u[2]))

def main():
    uinfo = []
    url = 'http://www.zuihaodaxue.cn/zuihaodaxuepaiming2016.html'   
    html = getHTMLText (url)
    fillUnivList(uinfo, html)
    printUnivList(uinfo,40)
main()

getHTMLText 用于获取HTML
fillUnivList 用于提取信息
printUnivList用于输出信息
不懂的可以问我,吃饭( o=^•ェ•)o ┏━┓!

你可能感兴趣的:(Python)