最近一直在做一個web項目秃踩,后端使用的是Flask框架衬鱼,然后需要用到中國所有大學(xué)的名稱和代號,本來想使用爬蟲來獲取憔杨,但在百度的時候發(fā)現(xiàn)了教育部公布出來的中國所有大學(xué)名單鸟赫,這也就不需費勁爬了。
2017全國高等學(xué)校名單:
http://www.moe.edu.cn/srcsite/A03/moe_634/201706/t20170614_306900.html
把名單下載下來消别,一看是這樣的:
其實我只需要紅線框里的內(nèi)容抛蚤,但Excel玩的還不如Python呢,所以決定用Python把這些內(nèi)容提取出來寻狂。
- 步驟:
1 使用xlrd讀取Excel文件
import xlrd,csv
data = xlrd.open_workbook('W020170616379651135432.xls') #打開下載下來的xls文件
2 提取出需要的內(nèi)容
table = data.sheets()[0] #table是第一張工作簿
school_names = table.col_values(1) #大學(xué)名稱列
school_codes = table.col_values(2) #大學(xué)標(biāo)識號列
school_info = []
for i in range(table.nrows):
if school_names[i] == '': #部分行被合并了單元格岁经,會顯示為空
continue
else:
school_info.append([school_names[i],school_codes[i]])
len(school_info)
#第一行是標(biāo)題,后面的2631行就是我們需要的信息了蛇券。
#這和教育部公布的數(shù)字無誤缀壤,可以在剛剛的鏈接里看到的。
2632
3 使用把信息寫入csv
with open('university_info.csv','w') as file:
newWriter=csv.writer(file)
newWriter.writerows(school_info)
-
結(jié)果:
- 參考: