python如何爬取2020年中国大学排名
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容介绍了"python如何爬取2020年中国大学排名"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所
千家信息网最后更新 2026年11月02日python如何爬取2020年中国大学排名
本篇内容介绍了"python如何爬取2020年中国大学排名"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
爬取中国大学排名
request 获取 htmlbeautiful soup 解析网页re 正则表达式匹配内容新建并保存 excel
from bs4 import BeautifulSoup # 网页解析 获取数据import re # 正则表达式 进行文字匹配import urllib.request, urllib.error # 制定url 获取网页数据import xlwtdef main(): baseurl = "http://m.gaosan.com/gaokao/265440.html" # 1爬取网页 datalist = getData(baseurl) savepath = "中国大学排名.xls" saveData(datalist,savepath)# 正则表达式paiming = re.compile(r'(.*) .* .* .* .* ') # 创建超链接正则表达式对象,表示字符串模式,规则xuexiao = re.compile(r'.* (.*) .* .* .* ')defen = re.compile(r'.* .* (.*) .* .* ')xingji = re.compile(r'.* .* .* (.*) .* ')cengci = re.compile(r'.* .* .* .* (.*) ')# 爬取网页def getData(baseurl): datalist = [] html = askURL(baseurl) # 保存获取到的网页源码 # print(html) #【逐一】解析数据 (一个网页就解析一次) soup = BeautifulSoup(html, "html.parser") # soup是解析后的树形结构对象 for item in soup.find_all('tr'): # 查找符合要求的字符串形成列表 # print(item) #测试查看item全部 data = [] # 保存一个学校的所有信息 item = str(item) #排名 paiming1 = re.findall(paiming, item) # re正则表达式查找指定字符串 0表示只要第一个 前面是标准后面是找的范围 # print(paiming1) if(not paiming1): pass else: print(paiming1[0]) data.append(paiming1) if(paiming1 in data): #学校名字 xuexiao1 = re.findall(xuexiao, item)[0] # print(xuexiao1) data.append(xuexiao1) #得分 defen1 = re.findall(defen, item)[0] # print(defen1) data.append(defen1) #星级 xingji1 = re.findall(xingji, item)[0] # print(xingji1) data.append(xingji1) #层次 cengci1 = re.findall(cengci, item)[0] # print(cengci1) data.append(cengci1) # print('-'*80) datalist.append(data) # 把处理好的一个学校信息放入datalist中 return datalist# 得到指定一个url网页信息内容def askURL(url): # 我的初始访问user agent head = { # 模拟浏览器头部信息,向豆瓣服务器发送消息 伪装用的 "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" } # 用户代理表示告诉豆瓣服务器我们是什么类型的机器--浏览器 本质是告诉浏览器我们可以接受什么水平的文件内容 request = urllib.request.Request(url, headers=head) # 携带头部信息访问url # 用request对象访问 html = "" try: response = urllib.request.urlopen(request) # 用urlopen传递封装好的request对象 html = response.read().decode("utf-8") # read 读取 可以解码 防治乱码 # print(html) except urllib.error.URLError as e: if hasattr(e, "code"): print(e.code) # 打印错误代码 if hasattr(e, "reason"): print(e.reason) # 打印错误原因 return html# 3保存数据def saveData(datalist, savepath): book = xlwt.Workbook(encoding="utf-8", style_compression=0) # 创建workbook对象 样式压缩效果 sheet = book.add_sheet('中国大学排名', cell_overwrite_ok=True) # 创建工作表 一个表单 cell覆盖 for i in range(0, 640): print("第%d条" % (i + 1)) data = datalist[i] # print(data) for j in range(0, 5): # 每一行数据保存进去 sheet.write(i , j, data[j]) # 数据 book.save(savepath) # 保存数据表#主函数if __name__ == "__main__": # 当程序执行时 # #调用函数 程序执行入口 main() # init_db("movietest.db") print("爬取完毕!")
具体实现效果如下
"python如何爬取2020年中国大学排名"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
网页
数据
信息
内容
对象
正则
表达式
大学
字符
字符串
学校
浏览器
中国
中国大学
浏览
国大学
国大
函数
头部
效果
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技园
深圳市人人互联网科技有限公司
新华互联网科技
互联网科技公司的优势
互联网中国科技
互联网科技未来
互联网 科技公司
互联网金融 科技
上海挚品互联网科技
宜安科技 互联网金融
奇士达互联网科技
互联网科技ppt模板
富国互联网科技创新基金
成都互联网科技公司100强
互联网软件和科技
科技类公司包括互联网吗
众安科技工业互联网合作
互联网界的黑科技
版纳互联网科技选哪家
前海云享互联网科技
科技互联网企业
互联网中国科技
深圳互联网络科技有限公司
广州紫鲸互联网科技
左右互联网络科技
科技类的互联网平台
隆华科技工业互联网
小米互联网科技园设置
花神(南京)互联网科技有限公司
互联网科技如何创业