Python 爬取五道口金融考研数据以及数据分析

导入模块

from bs4 import BeautifulSoup as bfs
import matplotlib.pyplot as plt
import requests
import pandas as pd
import seaborn as sns
%matplotlib inline

sns.set_style()

直接爬取网页源代码

url = "http://master.pbcsf.tsinghua.edu.cn/content/details303_14172.html"
response = requests.get(url)
html = response.text.encode('iso-8859-1').decode('utf-8')

BS4解析

soup =  bfs(html, 'html.parser')
datas = soup.select("table")[0].text.replace("\n"," ").split()

保存数据

values = [[] for i in range(7)]
n=len(datas)
for i in range(7,n):
    values[i%7].append(datas[i])
keys=[]
for i in range(0,7):
    keys.append(datas[i])
df = dict(zip(keys, values))
data_frame=pd.DataFrame(df)
data_frame.to_excel("THU2018.xlsx")

读取数据

data = pd.read_excel("THU2018.xlsx")
data.head()

提取目标数据

df = pd.DataFrame([data.PreExam,data.ReExam,data.Total],index=['PreExam', 'ReExam','Total'])
df = df.T
df.head()
df.describe()

查看数据统计信息

总共录取114名考试,初试平均分387分,最低分370分,最高分422分,50%的数据为386分,数据分析与前面一样就不做了

 

df.plot(kind='density', subplots=True, layout=(2,2), sharex=False, figsize=(15,10))

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值