作者 Lewis Chou
都说高考其实是相对公平的选拔,那么今天我们就用数据来说话,看看全国的教育资源,高校分布到底是怎样,哪里的小伙伴相对来说,更容易踏入大学的校门呢。
数据获取
这里我选择的是“高考网”作为我数据的来源
http://college.gaokao.com/schlist/p1
网站很简单,也没有任何的反爬机制,直接分析页面,获取并保存数据就可以了
这里直接给出代码,不关心数据获取过程的小伙伴儿可以跳过此部分
import requests
from bs4 import BeautifulSoup
import os
import time
'''
更多Python学习资料以及源码教程资料,可以在群1136201545免费获取
'''
def get_data():
for i in range(1, 108):
print("正在下载第%s页数据" % i)
url = 'http://college.gaokao.com/schlist/p%s' % i
res = requests.get(url).text
content = BeautifulSoup(res, "html.parser")
college_list = content.find('div', attrs={'class': 'scores_List'}).find_all('dl')
items = map(parse_item, college_list)
save_to_csv(items)
time.sleep(1)
def parse_item(item):
college_name = item.find('strong')['title']
college_attr = item.find_all('li')
college_site = college_attr[0].text[6:]
college_title = college_attr[1].text[5:]
college_type = college_attr[2].text[5:]
college_belong = college_attr[3].text[5:]
college_nature = college_attr[4].text[5:]
college_website = college_attr[5].text[5:]
result = {
'college_name': college_name,
'college_site': college_site,
'college_title': college_title,
'college_type': college_type,
'college_belong': college_belong,
'college_nature': college_nature,
'college_website': college_website
}
return result
def save_to_csv(data):
if not os.path.exists(r'college_data.csv'):
with open('college_data.csv', 'a+', encoding='utf-8') as f:
f.write('name,site,title,type,belong,nature,website\n')
for d in data:
try:
row = '{},{},{},{},{},{},{}'.format(d['college_name'],
d['college_site'],
d['college_title'],
d['college_type'],
d['college_belong'],
d['college_nature'],
d['college_website'])
f.write(row)
f.write('\n')
except:
continue
else:
with open('college_data.csv', 'a+', encoding='utf-8') as f:
for d in data:
try:
row = '{},{},{},{},{},{},{}'.format(d['college_name'],
d['college_site'],
d['college_title'],
d['college_type'],
d['college_belong'],
d['college_nature'],
d['college_website'])
f.write(row)
f.write('\n')
except:
continue
if __name__ == '__main__':
get_data()
我们来看下最后拿到的数据
数据还是比较整齐的,下面就进入到数据分析阶段
高校总数量排行
先不考虑高校质量、级别等因素,单单从高校数量方面来看下各个省份的排名情况
排行榜
总体排名
高校数量前十
高校数量后十
能够看到,高校数量靠前的省份为江苏、山东、湖北、广东,这些可都是高考大省,同时高校数量也是非常多的。而更加著名的高考大省河南河北,同样也有着不错的高校数量,看来这些省份虽然考生多,但是要想考上本省的一个大学,还是比较有优势的。
但是对于贵州、内蒙、青海,西藏等地区的考生来说,高考考出省,也许会是个不错的选择哦。
全国高校热力图
我们再通过一张热力图来看看全国大学的分布情况
不出意外,京畿重地、东南沿海加湖广地区、东北工业区、珠江三角洲和巴蜀地区,是大学比较几种的地区,同时也是我国经济比较发达且人口比较密集的区域,几者之间还是有着千丝万缕的联系的。
地区高校数量段位
在这个图表中,山东和江苏是独一档的存在,东南沿海其他城市几岁其后,不过大西北还是需要继续发展啊,基本是在倒数第一和第二挡位。
高校质量排行
前面的高校数量分析,并没有考虑高校的质量,即该省份拥有985,211高校的数量。现在就来分析下从高质量高校层面分析,哪些省份又排名靠前呢
985高校排行
毫无疑问,北京位居第一,其拥有的985高校是其他地区所不能比拟的。紧随其后的是上海,国际化的金融中心,也需要众多高等院校来衬托。山东也不错,位居第三。而前面榜单上的头名江苏则表现不佳,只拥有两所985院校,看来江苏的高校数量多,但是超级名牌大学却不是很多啊。
那么江苏的小伙伴儿,你们的高考困难吗?
211高校排行
拥有211院校的省份相对来说就比较多了,不过还是北京拥有的最多,谁让人家是帝都呢。上海依然位居次席,地位稳稳的,配得上自己的身价。
985211高校综合
我们再把拥有985和211高校的省份综合起来看
北京,上海,江苏,高质量高校三巨头出现了,就是它们。那么,这些省份的考生们,考名牌大学的困难程度是不是要比其他地区低一些呢,我没经历过,我没发言权,哈哈哈哈。
高质量高校热力分布图
京津和长三角地区优势明显,妥妥的高质量院校聚集地。
各地区高质量高校占比
北京高质量高校占比
北京一个省份,占有率高达19%,绝对的全国教育中心,人才聚集地。
高质量高校三巨头占比
三巨头也不遑多让,高达37%的占比,真真是羡煞其他地区了。
占比前十城市高质量高校占比
这个比例,拿走了绝大部分的教育资源,其他地区,没得玩了。
你所在的省份,有优势吗?
高校类别及属性分布
最后,我们再来看看,各种类型及不同属性的高校分布情况
工科和综合性大学是最多的,这应该是和报考人数以及社会需求息息相关的。
全国的高职专科所占比例接近50%,看来这种定向培养专业人才的高校还是有其生存之道的,当然,占有32%的本科院校,依然是广大学子的首选院校。