用 Python 展示全国高校的分布情况,你知道志愿该填哪了吗?

本文介绍了如何使用Python爬取掌上高考网的高校数据,结合百度地图API获取经纬度,最后利用Echarts进行数据可视化,展示全国高校的分布情况,包括热点图和省级密度图,帮助高考生了解填报志愿的参考信息。
摘要由CSDN通过智能技术生成

6月是毕业季,高考生正在准备填志愿。本文用Python展示了全国高校的分布情况,全国的高校哪些地方多,哪些地方少,可以一目了然地看到。

数据获取

要展示高校的分布情况,就得先获取全国高校的位置数据。本文的数据来源于掌上高考网(https://www.gaokao.cn/school/search)。

在2022年6月写本文时,共获取到了2822所高校的信息。检查了数据,除了极个别空值外,整份数据是非常完整的,不影响使用。数据一共有44个字段,本文只会用几个字段,可以不做处理,使用时按需获取即可。

数据获取方法介绍(基础爬虫知识):

1.注册登录掌上高考网。在<查学校>页面选择全部学校。

2.按F12键,点击到 Network > Fetch/XHR,然后点击几次<查学校>页面的<上一页>、<下一页>按钮,在XHR的页面会显示访问的API等信息。

3.将每次翻页时的API复制出来进行对比,发现翻页时变化的参数有两个:page和signsafe,page为当前访问的页数,signsafe是一个md5值,没法反解,但可以把前面几次的值保存下来,后面随机变化使用。有了这个信息,不断改变访问的页数和signsafe值,就可以获取到所有的学校数据。

Response中的numFound参数值是学校总数,除以每页显示的学校个数可以得到总页数,也可以直接点击页面的<尾页>查看总页数,这样就确定了访问的次数。

4.因为网站需要登录才能使用,所以还要获取访问时的Headers,如Request Method(此次用POST)、User-Agent等。

5.有了上面的信息,循环拼接出所有页面的url,用requests发送请求即可获取到所有高校的数据,然后用pandas将数据写到excel中。

温馨提示:获取数据时需遵守网站的相关声明,爬虫代码尽量设置一定的时间间隔,不要在访问高峰期运行爬虫代码。

补充说明:

人民网最新公布:全国的普通高校数是2759所,与本文从掌上高考网获取的2822所相差63所,主要是部分学校的分校统计方式不同造成的差异。本文所展示的是分布情况,这个差异的影响不大。

经纬度获取

掌上高考网是为高考填志愿服务的网站,虽然获取的数据有44个字段,但里面并没有学校的经纬度。为了更好地在地图上展示高校位置, 需要根据学校的地址获取对应的经纬度。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在高考志愿填报过程中,使用Python进行分析和决策是可行的。通过Python编程,你可以编写程序来获取各个学校的录取分数线和专业信息,并根据自己的分数情况进行匹配和选择。 首先,你可以使用Python编写程序来获取各个学校的招生信息。可以通过爬虫技术从官方网站或其他可靠的教育平台上获取学校录取分数线、位次等相关信息。爬取的数据可以存储在数据库或文件中,方便后续分析和比较。 然后,你可以通过编写Python程序来分析和比较不同学校的录取信息。可以根据自己的高考分数,与各个学校的录取分数线进行对比,判断自己是否有可能被录取。同时,还可以参考各校专业录取的平均分、位次等信息,根据自己的兴趣和优势进行合理的选择。 另外,你也可以使用Python编写程序来进行志愿填报的优化和推荐。可以根据自己的兴趣、专业要求、就业前景等因素,对不同学校和专业进行评估和排序,从而给出合理的填报建议。 总之,使用Python进行高考志愿填报的分析和决策是一种便捷有效的方法。通过编写程序来获取和分析学校录取信息,可以帮助你更好地了解各个学校和专业的情况,并做出合理的选择。希望对你的高考志愿填报有所帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [利用Python爬取各大高校信息并可视化分析,让你填志愿选学校不再迷茫](https://blog.csdn.net/yunyun889901/article/details/118219667)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值