python大学排名爬虫可视化
时间: 2023-07-11 15:58:41 浏览: 113
大学排名爬虫
下面是一个简单的Python爬虫和可视化示例:
1. 确定数据来源和目标网站,这里以QS世界大学排名为例。使用requests和BeautifulSoup库进行数据爬取和解析。
```
import requests
from bs4 import BeautifulSoup
url = 'https://www.topuniversities.com/university-rankings/world-university-rankings/2021'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
```
2. 提取相关数据并保存到csv文件中,这里以排名和学校名称为例。
```
import csv
data = []
for row in soup.select('div.rankings-table tbody tr'):
rank = row.select_one('td.rank').text.strip()
name = row.select_one('td.uni a').text.strip()
data.append((rank, name))
with open('university_ranking.csv', 'w', encoding='utf-8', newline='') as f:
writer = csv.writer(f)
writer.writerow(['Rank', 'University'])
writer.writerows(data)
```
3. 使用pandas库读取csv文件,进行数据整理和可视化。
```
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv('university_ranking.csv')
plt.figure(figsize=(10, 10))
plt.barh(df['University'], df['Rank'])
plt.gca().invert_yaxis()
plt.xlabel('Rank')
plt.ylabel('University')
plt.title('QS World University Ranking 2021')
plt.show()
```
这里使用了水平条形图进行可视化,可以根据需要选择其他类型的图表。最终生成的可视化图表如下:
![QS World University Ranking 2021](https://i.imgur.com/gf3QcJZ.png)
阅读全文