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

最近一直在做一个web项目,后端使用的是Flask框架,然后需要用到中国所有大学的名称和代号,本来想使用爬虫来获取,但在百度的时候发现了教育部公布出来的中国所有大学名单,这也就不需费劲爬了。
2017全国高等学校名单:
http://www.moe.edu.cn/srcsite/A03/moe_634/201706/t20170614_306900.html

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


从xlrd到csv,提取中国所有大学名称_第1张图片
Excel样式

其实我只需要红线框里的内容,但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到csv,提取中国所有大学名称_第2张图片
    处理结果
  • 参考
  1. xlrd的用法:
    http://www.cnblogs.com/lhj588/archive/2012/01/06/2314181.html
  2. csv的用法:
    http://blog.csdn.net/u012162613/article/details/41915859

你可能感兴趣的:(从xlrd到csv,提取中国所有大学名称)