python中国最好大学排名_爬虫项目一:2019年中国最好大学排名

1. 任务介绍

需求分析:爬取最好大学网,软科中国最好大学排名2019的数据,包括名次、学校名称、省份、总分、指标得分。

2. 爬虫的基本流程

准备工作

通过浏览器查看分析目标网页,学习编程基础规范。获取数据

通过request库向目标网站发起请求,请求可以包含的headers等信息,如果服务器能够正常响应,会得到一个response,这就是所需要获取的页面内容。解析内容

得到的内容可能是html、json等格式,可以用页面解析库、正则表达式等进行页面的解析。保存数据

保存数据的形式可以有多种样式,可以是文本,也可以保存到数据库,或者特定格式的文件。

3. 准备工作

(1). 分析页面

(2). 获取页面内容

def getHTMLText(url):

headers = {

'user-agent':"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"

} #伪装为浏览器去请求访问网页

r=requests.get(url,timeout=30,headers=header)

print(r.status_code) # 状态码 判断请求是否成功

r.encoding=r.apparent_encoding

return r.text

(3). 解析内容

#对爬取的html文件进行解析

def fillUnivList(ulist,html):

soup=BeautifulSoup(html,"html.parser")

for tr in soup.find("tbody").children: #遍历所有的tbody中的tr标签

if isinstance(tr,bs4.element.Tag):

tds=tr('td') #tr中的td标签,即为表中的每一列数据

ulist.append([tds[0].string,tds[1].string,tds[2].string,tds[3].string])

(4).保存数据

def save_UnivList(ulist,num):

fn=r"大国大学排名表.xlsx"

wb=Workbook() #创建工作簿

ws=wb.worksheets[0]

ws.title="2019中国大学排名信息" #更改表的名称

ws.append(["2019排名", "学校名称", "省份","分数"]) #添加表头信息

for i in range(num): #前num名学校信息

u = ulist[i]

ws.append(u)

wb.save(fn) #保存工作簿

源码请私信专栏栏主

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值