前言
國內大學最新排名,北大反超,浙大僅第四,中科大跌至第八
時隔五年,“雙一流”大學即將迎來首次大考,這也是繼改變高校評斷標準之后,第一次即將以官方對外發布,自然是引來了許多人的關注。最近,有許多不同機構發布的國內高校排名,但彼此之間的差異很大,網友之間的爭議也很大。
私信小編01即可獲取大量Python/ target=_blank class=infotextkey>Python學習資料
項目目標
爬取高三網大學排名,并保存
目標網址
http://m.gaosan.com/gaokao/265440.html
基本環境配置
- python 3.6 pycharm
爬蟲代碼
導入工具
import requests
import parsel
import csv
請求網頁數據
?
url = 'http://m.gaosan.com/gaokao/265440.html'
headers = {
'User-Agent': 'Mozilla/5.0 (windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'
}
response = requests.get(url=url, headers=headers)
response.encoding = response.apparent_encoding
爬取數據
selector = parsel.Selector(response.text)
trs = selector.css('#page tr')
for tr in trs:
dit = {}
ranking = tr.css('td:nth-child(1)::text').get()
dit['名次'] = ranking
school = tr.css('td:nth-child(2)::text').get()
dit['學校名稱'] = school
score = tr.css('td:nth-child(3)::text').get()
dit['綜合得分'] = score
star = tr.css('td:nth-child(4)::text').get()
dit['星級排名'] = star
level = tr.css('td:nth-child(5)::text').get()
dit['辦學層次'] = level
csv_writer.writerow(dit)
?
保存數據
f = open('排名.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['名次', '學校名稱', '綜合得分', '星級排名', '辦學層次'])
f.close()
運行代碼,效果如下圖
?
?
?