您的位置:首页 > 编程语言 > Python开发

从xlrd到csv,提取中国所有大学名称

2017-09-25 15:22 323 查看
最近一直在做一个web项目,后端使用的是Flask框架,然后需要用到中国所有大学的名称和代号,本来想使用爬虫来获取,但在百度的时候发现了教育部公布出来的中国所有大学名单,这也就不需费劲爬了。

2017全国高等学校名单:

http://www.moe.edu.cn/srcsite/A03/moe_634/201706/t20170614_306900.html

把名单下载下来,一看是这样的:



其实我只需要红线框里的内容,但Excel玩的还不如Python呢,所以决定用Python把这些内容提取出来。

步骤

1 使用xlrd读取Excel文件

import xlrd,csv


data = xlrd.open_workbook('W020170616379651135432.xls') #打开下载下来的xls文件


2 提取出需要的内容

table = data.sheets()[0] #table是第一张工作簿
school_names = table.col_values(1) #大学名称列
school_codes = table.col_values(2) #大学标识号列


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)
#第一行是标题,后面的2631行就是我们需要的信息了。
#这和教育部公布的数字无误,可以在刚刚的链接里看到的。


2632


3 使用把信息写入csv

with open('university_info.csv','w') as file:
newWriter=csv.writer(file)
newWriter.writerows(school_info)


结果



参考

xlrd的用法:

http://www.cnblogs.com/lhj588/archive/2012/01/06/2314181.html

csv的用法:

http://blog.csdn.net/u012162613/article/details/41915859
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python xlrd csv