Python爬虫教程:爬取800多所大学学校排名、星级等

本文介绍了如何使用Python爬虫技术从高三网抓取大学排名信息,包括北大反超、浙大第四、中科大降至第八等关键变动。通过配置环境、编写代码并运行,成功保存了爬取到的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

国内大学最新排名,北大反超,浙大仅第四,中科大跌至第八

时隔五年,“双一流”大学即将迎来首次大考,这也是继改变高校评断标准之后,第一次即将以官方对外发布,自然是引来了许多人的关注。最近,有许多不同机构发布的国内高校排名,但彼此之间的差异很大,网友之间的争议也很大。

项目目标

爬取高三网大学排名,并保存

目标网址

http://m.gaosan.com/gaokao/265440.html

基本环境配置

python 3.6 pycharm

爬虫代码

导入工具
import requests
import parsel
import csv
新手学习,Python 教程/工具/方法/解疑+V:itz992
请求网页数据

url = 'http://m.gaosan.com/gaokao/265440.html' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36' }
response = requests.get(url=url, headers=headers)
response.encoding = response.apparent_encoding


爬取数据
selector = parsel.Selector(response.text)
trs = selector.css('#page tr') for tr in trs:
    dit = {}
    ranking = tr.css('td:nth-child(1)::text').get()
    dit['名次'] = ranking
    school = tr.css('td:nth-child(2)::text').get()
    dit['学校名称'] = school
    score = tr.css('td:nth-child(3)::text').get()
    dit['综合得分'] = score
    star = tr.css('td:nth-child(4)::text').get()
    dit['星级排名'] = star
    level = tr.css('td:nth-child(5)::text').get()
    dit['办学层次'] = level
    csv_writer.writerow(dit)


保存数据
f = open('排名.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['名次', '学校名称', '综合得分', '星级排名', '办学层次'])
f.close()

运行代码,效果如下图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值