本项目旨在利用大数据处理技术,对 Steam 平台的热销游戏及海量用户评论进行全链路分析。通过采集原始数据、清洗结构化特征、利用分布式引擎进行数据建模,最终以可视化形式输出关于中国游戏市场占比、玩家偏好及市场细分的深度洞察报告。
big_data_process/ ├── steam_crawler.py # [采集层] 负责调用接口抓取原始游戏列表及评论 ├── clean_data.py # [清洗层] 负责数据ETL,处理价格、日期及文本格式 ├── spark_analysis.py # [分析层] 利用PySpark执行分布式统计与K-Means聚类 ├── visualize.py # [可视化] 读取分析结果,生成商业洞察图表 │ ├── 1_steam_games.csv # [原始数据] 爬取的100款热门游戏基础信息 ├── 2_game_reviews.json # [原始数据] 爬取的数万条多语言原始评论数据 ├── 3_game_tags.txt # [原始数据] 游戏与标签的对应关系文件 │ ├── cleaned_data/ # [ETL输出] 存储清洗后、可直接供分析使用的结构化数据 │ ├── games_clean.csv # 清洗后的游戏列表(价格已转为数值) │ ├── reviews_clean.csv # 清洗后的评论数据(CSV格式,方便Excel查看) │ └── reviews_clean.json # 清洗后的评论数据(JSON格式,供Spark高效读取) │ ├── market_analysis_results/ # [分析输出] 存储PySpark处理后的统计结果 │ ├── task0_overall_stats.txt # 宏观市场占比统计数据 │ ├── task1_global_hits_cn_ratio.csv # Top 10 游戏市场分布对比 │ ├── task2_cn_preferred_tags.csv # 中国玩家偏好标签排名 │ └── task4_kmeans_clusters.csv # K-Means 聚类后的游戏市场分类结果 │ ├── final_charts/ # [报告输出] 最终生成的分析图表 │ ├── Chart1_Steam_Daily_Top10_Ratio.png # 核心游戏中文分布图 │ ├── Chart2_Highest_Ratio_Top10.png # 纯度最高的游戏排名图 │ └── Chart3_KMeans_Clusters.png # 市场细分聚类散点图 │ ├── SimHei.ttf # [资源] 中文字体文件,用于解决可视化乱码问题 └── README.md # 项目说明文档
1.数据采集:使用 Requests 结合分页游标算法,获取 Steam 动态加载的评论数据。 2.数据清洗:利用 Pandas 对混乱的价格字符串进行正则解析,并进行特征工程(如构建 is_chinese 指标)。 3.分布式挖掘: 使用 PySpark 的 explode 算法进行嵌套标签的展开与词频统计。 应用 K-Means 聚类算法,根据玩家粘性与市场分布对游戏进行自动化分类。 4.可视化表现:使用 Seaborn 构建多维散点图与带基准线的柱状图,直观展现分析成果。
1.Python 3.x 2.Spark 3.x (配置 local[*] 模式运行) 3.依赖库安装: pip install requests beautifulsoup4 pandas matplotlib seaborn pyspark 4.字体配置: 确保 SimHei.ttf 放置在项目根目录下。
1.执行采集: python steam_crawler.py 2.执行清洗: python clean_data.py 3.分布式挖掘: spark-submit spark_analysis.py 4.生成可视化报告: python visualize.py
如果无法运行请使用绝对路径运行