基于大数据的动漫影视可视化分析系统

温馨提示:文末有 CSDN 平台官方提供的学长 Wechat / QQ 名片 :)

1. 项目简介

        本动漫分析系统开发语言为Python,并进行数据清洗,数据处理,并最后利用可视化技术进行动漫数据分析。本动漫分析系统的网站搭建采用B/S (Browser/Server)平台技术,使用HTML等实现网页展示,将数据格式化,并存储到json文件中,利用flask搭建后台系统,前端采用 bootstrap 和Echarts实现动漫数据的可视化展示和交互,并从多种因素分析影响动漫的评分情况。

【系统演示】基于大数据的动漫分析系统

2. 功能组成

        本系统通过对动漫数据的清洗、分析等,实现动漫的可视化分析,主要功能包括以下方面:

  1. 从某动漫网站抓取所有动漫动画数据,并进行数据清洗,去除无效字符和错误字符,将清洗和结构化后的数据转成 json 格式数据;
  2. 实现从动漫的话数、放送时间、导演、脚本、评分、评分人数等维度进行进行多种形式的可视化分析,包括柱状图、折线图、散点图、扇形图等;
  3. 分析话数、放送时间、导演、脚本、评分人数等因素影响评分的情况。

3. 动漫数据爬虫

        针对某动漫影视网站,利用 request + beautifulsoup 编写原生网络爬虫,完成数据的采集和清洗,并存储到数据库或文件系统中:

total_page = 200
base_url = 'https://xxxxxxx.tv/anime/browser?sort=rank&page={}'

for page in range(1, total_page):
    print('抓取第 {} 页的数据'.format(page))
    url = base_url.format(page)
    headers = {
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
        'Content-Type': 'application/x-www-form-urlencoded',
        'Accept-Encoding': 'gzip, deflate, compress',
        'Accept-Language': 'en-us;q=0.5,en;q=0.3',
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36',
        'Referer': url
    }
    response = requests.get(url, headers=headers)
    response.encoding = 'utf8'
    soup = BeautifulSoup(response.text, 'lxml')

    item_ul = soup.find(name='ul', attrs={'id': 'browserItemList'})
    items = item_ul.find_all(name='li')

    for item in items:
        try:
            ......
            # 话数,上映时间,导演等
            info = item.find('p', attrs={'class': 'info tip'}).text
            info = info.strip().replace(' ', '').split('/')
            # 话数
            hua_count = info[0][:-1]
            date = info[1]
            peoples = info[2:] if len(info) > 2 else []
            ......
            anime_info = {
                '封面': img,
                '名称': name,
                '类型': leixing,
                '排名': int(rank),
                '话数': int(hua_count),
                '放送时间': date,
                '导演': daoyan,
                '声优': cv_shengyou,
                '脚本': jiaoben,
                '评分': float(score),
                '评分人数': int(score_count)
            }
            

4. 基于大数据的动漫影视可视化分析系统

4.1 不同类型动漫的数量分布情况

基于大数据的动漫影视可视化分析系统_第1张图片

4.2 不同类型动漫的评分分布及与评论人数的相关性分析

基于大数据的动漫影视可视化分析系统_第2张图片

 4.3 不同动漫导演制作的动漫类型、评分与话数等分布情况

基于大数据的动漫影视可视化分析系统_第3张图片

4.4 不同声优参与的动漫类型、评分与话数等分布情况

基于大数据的动漫影视可视化分析系统_第4张图片 4.5 不同脚本参与的动漫、评分与话数等分布情况

基于大数据的动漫影视可视化分析系统_第5张图片

4.6 动漫名称关键词词云分析

基于大数据的动漫影视可视化分析系统_第6张图片

5. 总结

        本动漫分析系统的网站搭建采用B/S (Browser/Server)平台技术,使用HTML等实现网页展示,将数据格式化,并存储到json文件中,利用flask搭建后台系统,前端采用 bootstrap 和Echarts实现动漫数据的可视化展示和交互,并从多种因素分析影响动漫的评分情况。

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码

技术交流认准下方 CSDN 官方提供的学长 Wechat / QQ 名片 :)

精彩专栏推荐订阅:

1. Python 毕设精品实战案例
2. 自然语言处理 NLP 精品实战案例
3. 计算机视觉 CV 精品实战案例

你可能感兴趣的:(Python,毕设精品实战案例,数据挖掘,数据分析,数据可视化,大数据)