引言哔哩哔哩(Bilibili,简称B站)作为国内知名的视频分享网站,汇聚了大量的二次元、动画、游戏、科技等领域的优质内容。许多用户在B站上拥有丰富的观看记录,而这些记录背后隐藏着用户的个人喜好和观看...
哔哩哔哩(Bilibili,简称B站)作为国内知名的视频分享网站,汇聚了大量的二次元、动画、游戏、科技等领域的优质内容。许多用户在B站上拥有丰富的观看记录,而这些记录背后隐藏着用户的个人喜好和观看习惯。本文将介绍如何使用Python轻松获取B站用户的观看记录,并通过数据可视化分析揭示用户的观看喜好。
在开始之前,请确保已经安装以下Python库:
可以使用pip进行安装:
pip install requests beautifulsoup4 pandas matplotlib seaborn selenium使用Python爬虫技术,我们可以通过分析B站网页的源代码来获取用户的观看记录。以下是一个简单的示例代码:
import requests
from bs4 import BeautifulSoup
def get_my_history(): url = 'https://www.bilibili.com/my/history' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3' } response = requests.get(url, headers=headers) soup = BeautifulSoup(response.text, 'html.parser') history_list = soup.find_all('a', class_='video-title') for item in history_list: title = item.get_text() print(title)
get_my_history()请注意,由于B站的反爬虫机制,上述代码可能无法正常运行。在实际操作中,您可能需要使用代理、更换User-Agent等手段来绕过反爬虫限制。
获取到观看记录后,我们可以使用Pandas库对数据进行处理和分析。以下是一个简单的示例:
import pandas as pd
def process_history(history_list): df = pd.DataFrame({'title': history_list}) return df
history_df = process_history([item.get_text() for item in history_list])
print(history_df)使用Matplotlib和Seaborn库,我们可以将用户的观看记录进行可视化展示。以下是一个简单的示例:
import matplotlib.pyplot as plt
import seaborn as sns
def visualize_history(df): plt.figure(figsize=(12, 6)) sns.countplot(y='title', data=df) plt.title('Bilibili 观看记录统计') plt.show()
visualize_history(history_df)本文介绍了如何使用Python获取B站用户的观看记录,并通过数据处理和可视化分析揭示用户的观看喜好。通过这些方法,我们可以更好地了解用户在B站的观看习惯和兴趣,为内容创作者、运营者以及推荐系统提供有价值的信息。