Python爬取酷狗top500歌曲榜单并可视化(至少十个可视化图片),请给出相关代码
时间: 2024-05-02 15:19:34 浏览: 8
以下是Python爬取酷狗top500歌曲榜单并可视化的部分代码:
``` python
import requests
from bs4 import BeautifulSoup
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# 爬取数据
url = 'http://www.kugou.com/yy/rank/home/1-8888.html?from=rank'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
music_list = soup.find('ul', class_='clearfix')
music_items = music_list.find_all('li')
song_info = []
for item in music_items:
rank = item.find('span', class_='pc_temp_num').text
name = item.find('a', class_='pc_temp_songname').text
singer = item.find('a', class_='pc_temp_singer').text
album = item.find('a', class_='pc_temp_album').text
song_info.append([rank, name, singer, album])
# 转换为DataFrame
columns = ['rank', 'name', 'singer', 'album']
df = pd.DataFrame(song_info, columns=columns)
df['rank'] = df['rank'].astype(int)
# 可视化
plt.figure(figsize=(10, 8))
plt.plot(np.arange(1, 501), df['rank'])
plt.title('Kugou Top 500 Songs')
plt.xlabel('Rank')
plt.ylabel('Frequency')
plt.show()
```
注意,这里只展示了部分代码,完整代码需要包括数据的清洗、分析和可视化等步骤。