{"id":28484627,"url":"https://github.com/sansan0/bilibili-comment-analyzer","last_synced_at":"2026-01-21T13:25:24.310Z","repository":{"id":297222759,"uuid":"995390562","full_name":"sansan0/bilibili-comment-analyzer","owner":"sansan0","description":"🎯 哔哩哔哩(bilibili)评论区数据可视化分析软件-- up主可用于指导自己的题材选择，明确自己的粉丝群体","archived":false,"fork":false,"pushed_at":"2025-06-27T11:05:34.000Z","size":37091,"stargazers_count":369,"open_issues_count":0,"forks_count":57,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-20T02:21:17.310Z","etag":null,"topics":["bangumi","bilibili","comments","dashboard","data-visualization","geo-mapping","gui-application","heatmap","interactive-visualization","macos","python","sentiment-analysis","social-media-analytics","spider","text-analysis","trend-analysis","web-scraping","windows","wordcloud"],"latest_commit_sha":null,"homepage":"https://github.com/sansan0","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sansan0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-03T12:10:13.000Z","updated_at":"2026-01-19T00:20:53.000Z","dependencies_parsed_at":"2025-06-27T12:21:18.962Z","dependency_job_id":"6015b56b-5af9-407c-af61-0995310d004c","html_url":"https://github.com/sansan0/bilibili-comment-analyzer","commit_stats":null,"previous_names":["sansan0/bilibili-comment-analyzer"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/sansan0/bilibili-comment-analyzer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sansan0%2Fbilibili-comment-analyzer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sansan0%2Fbilibili-comment-analyzer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sansan0%2Fbilibili-comment-analyzer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sansan0%2Fbilibili-comment-analyzer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sansan0","download_url":"https://codeload.github.com/sansan0/bilibili-comment-analyzer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sansan0%2Fbilibili-comment-analyzer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28633757,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T04:47:28.174Z","status":"ssl_error","status_checked_at":"2026-01-21T04:47:22.943Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bangumi","bilibili","comments","dashboard","data-visualization","geo-mapping","gui-application","heatmap","interactive-visualization","macos","python","sentiment-analysis","social-media-analytics","spider","text-analysis","trend-analysis","web-scraping","windows","wordcloud"],"created_at":"2025-06-07T22:35:12.303Z","updated_at":"2026-01-21T13:25:24.281Z","avatar_url":"https://github.com/sansan0.png","language":"Python","funding_links":[],"categories":["数据分析"],"sub_categories":["直播脚本"],"readme":"# 哔哩哔哩评论观察者 (BiliBili Comment Analyzer)\n\n\u003cdiv align=\"center\"\u003e\n\n[![License](https://img.shields.io/badge/license-GPL--3.0-blue.svg)](LICENSE)\n[![Python](https://img.shields.io/badge/python-3.10%2B-blue.svg)](https://www.python.org/)\n[![Version](https://img.shields.io/badge/version-v1.1.0-green.svg)](https://github.com/sansan0/bilibili-comment-analyzer)\n[![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20macOS%20%7C%20Linux-lightgrey.svg)](https://github.com/sansan0/bilibili-comment-analyzer)\n\n\u003c/div\u003e\n\n一个专业的 B 站评论数据分析工具，帮你挖掘评论区背后的故事。无论你是内容创作者、数据研究者，还是单纯的好奇宝宝，都能从中发现有趣的洞察。本工具仅供个人学习和研究使用。\n\n## 📋 功能截图\n\n### 主界面概览\n\n![主界面](docs/images/main-interface.png)\n\n### 地区分布热力图\n\n![地区分布地图](docs/images/geo-map.gif)\n\n### 智能词云分析\n\n![词云分析](docs/images/wordcloud.gif)\n\n## 🎯 这个工具能解决什么问题？\n\n**📺 内容创作者的困惑：**\n\n- 我的视频在不同地区的反响如何？哪里的观众更活跃？\n- 评论区大家都在聊什么？哪些话题最火？\n- 不同时期发布的内容，观众反应有什么变化趋势？\n- 如何基于数据优化内容策略，提升互动效果？\n\n**📊 数据爱好者的需求：**\n\n- 想研究网络文化和地域差异在评论中的体现\n- 需要大量真实的用户行为数据做分析\n- 希望了解不同群体的兴趣偏好和表达习惯\n- 想要可视化展示复杂的社交媒体数据\n\n**🔍 吃瓜群众的好奇：**\n\n- 这个视频为什么这么火？各地网友都是什么反应？\n- 想看看自己关注的 UP 主粉丝都来自哪里\n- 好奇热门事件在不同地区的讨论差异\n- 想了解网络热梗的传播轨迹\n\n**🏢 运营和媒体工作者：**\n\n- 分析品牌或产品在不同地区的口碑差异\n- 研究舆情传播规律和用户画像\n- 监测内容营销效果和用户反馈\n- 发现潜在的市场机会和风险点\n\n## 🔄 更新日志\n\n### v1.1.0 (2025-06-14)\n\n1. 词云增加根据筛选条件一键复制评论的功能，感谢@潇湘 在公众号的支持而开发\n\n### v1.0.0 (2025-06-04)\n\n🎉 首次发布\n\n## ✨ 核心功能\n\n- **单视频深度分析** - 支持 BV 号、EP 号、SS 号，完整获取评论数据\n- **UP 主批量分析** - 一键分析多个视频内容\n- **全国热力地图** - 基于 IP 属地生成省份级评论分布图\n- **多维度统计** - 按评论数、用户数、点赞数展示地域差异\n- **交互式探索** - 支持缩放、悬停的动态地图体验\n- **智能词云生成** - 中文分词技术提取评论关键词\n- **灵活筛选维度** - 按地区、性别、等级查看不同群体关注点\n- **实时数据面板** - 动态展示筛选后的用户画像统计\n- **内置本地服务** - 无需部署即可预览所有分析结果\n- **标准化导出** - CSV 格式保存完整数据，支持二次分析\n\n## 🚀 快速开始\n\n### 方式一：直接运行（推荐）\n\n1. 前往 [Releases 页面](https://github.com/sansan0/bilibili-comment-analyzer/releases) 下载最新版本\n2. 解压后双击运行 `哔哩哔哩评论观察者.exe`\n\n### 方式二：源码运行\n\n```bash\ngit clone https://github.com/sansan0/bilibili-comment-analyzer.git\ncd bilibili-comment-analyzer\npip install poetry\npoetry install\npoetry run python run.py\n```\n\n## 📖 使用指南\n\n### 🔑 账号登录设置\n\n进入「设置」页面，点击「扫码登录」，使用 B 站手机 APP 扫描二维码。\n\n### 🎬 单视频分析流程\n\n1. 切换到「视频评论下载」页面\n2. 输入目标内容：\n   - 视频：BV 号（如 BV1xx411c7mD）\n   - 番剧：EP 号（如 EP123456）或 SS 号\n   - 支持直接粘贴完整链接\n3. 选择评论排序方式（按时间/点赞数/回复数）\n4. 勾选「生成评论地区分布地图」\n5. 点击「获取评论」开始分析\n\n### 👤 UP 主批量分析\n\n1. 进入「UP 主视频批量下载」页面\n2. 输入 UP 主 ID（从 space.bilibili.com/数字 中获取）\n\n### 🌐 查看分析结果\n\n在「浏览已下载」页面可以：\n\n- 浏览地图 - 查看地域分布热力图\n- 浏览词云 - 探索热门话题和关键词\n\n### 🛠️ 从现有数据生成内容\n\n- **生成地图** - 从 CSV 文件重新生成地区分布图\n- **生成词云** - 基于已有数据创建词云分析\n- **获取图片** - 下载评论中的图片资源\n\n## ❓ 常见问题\n\n### 🔐 登录相关\n\n**Q：为什么需要登录？**  \nA：登录后可以获取完整的评论数据，包括用户等级、IP 属地等信息。未登录状态下大部分数据无法获取。\n\n**Q：Cookie 是否安全？**  \nA：Cookie 仅在本地存储，不会上传到任何服务器。请注意保护好你的 Cookie，不要泄露给他人。\n\n**Q：二维码登录失败怎么办？**  \nA：请确保网络连接正常，使用最新版本的 B 站手机 APP 扫码。如仍失败，可以在 issues 反馈问题或者公众号留言。\n\n### 📊 分析相关\n\n**Q：词云为什么没有显示某些词汇？**  \nA：程序会自动过滤停用词、短词和无意义词汇。你可以查看停用词文件 **stopwords.txt** 进行自定义调整。\n\n**Q：当前分词效果有些一般？**  \nA：我默认打包了较小的模型，不然一个压缩包几百兆挺大的，你可以访问 https://github.com/lancopku/pkuseg-python 下载 releases 中的模型，默认推荐 [default_v2](https://github.com/lancopku/pkuseg-python/releases/download/v0.0.25/default_v2.zip) 模型，解压覆盖到 web 目录就行。\n\n## 📧 学习交流与问题反馈\n\n![微信公众号](assets/weixin.png)\n\n\u003cdiv align=\"center\"\u003e\n\n![微信底部留言](docs/images/support.jpg)\n\n\u003c/div\u003e\n\n## ⚠️ 使用声明\n\n\u003e [!CAUTION]  \n\u003e **使用本工具即表示您明确知晓并同意免责声明里的内容：**\n\n\u003cdetails\u003e\n\u003csummary\u003e 点击查看 - 免责声明 \u003c/summary\u003e\n\n1.  本工具仅作为技术研究和教育展示，不鼓励、不支持任何实际使用\n2.  开发者不对工具的合法性作任何保证，不承担用户使用的任何法律后果\n3.  本工具为技术中立工具，使用者需对其使用行为承担全部法律责任\n4.  如收到平台方或监管部门要求，将立即停止提供和维护本工具\n\n本工具**严禁**用于以下任何场景：\n\n- 任何商业用途或营利活动\n- 大规模或自动化数据采集\n- 侵犯他人隐私权或个人信息\n- 违反平台服务条款的行为\n- 任何可能违反中国法律法规的用途\n\n1.  您完全了解并自愿承担所有可能的法律风险，包括但不限于刑事责任、行政处罚、民事赔偿\n2.  您有义务确保使用行为完全符合所有适用的法律法规和平台规则\n3.  您承诺在使用前已咨询专业法律意见，并获得明确的合规指导\n4.  因您的使用行为导致的任何法律后果，您承诺承担全部责任并赔偿相关损失\n\u003c/details\u003e\n\n**如您决定继续使用本工具，即表示您已充分理解并愿意承担所有风险。**\n\n## 🙏 开发致谢\n\n感谢以下开源项目的支持：\n\n- [pkuseg-python](https://github.com/lancopku/pkuseg-python) - 北京大学开源的中文分词工具，为本项目的词云分析提供了强大的分词支持\n- [spacy-pkuseg](https://github.com/explosion/spacy-pkuseg) - 非常谢谢，虽然自用 pkuseg-python 没问题，但没有这个项目，打包给其它用户就不行了\n- [blblcd](https://github.com/WShihan/blblcd) - 为本项目的数据结构设计提供了参考和灵感\n- [bilibili-API-collect](https://github.com/SocialSisterYi/bilibili-API-collect) - 为本项目的 B 站 API 调用提供了参考\n- [ai-code-context-helper](https://github.com/sansan0/ai-code-context-helper) - 为本项目加速开发提供了助力(哈哈自卖自夸，自己写的小工具)\n\n## 📜 许可协议\n\n本项目采用 GPL-3.0 许可证 - 详见 [LICENSE](LICENSE) 文件。\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**⭐ 如果这个工具对你有帮助，请给项目点个 Star 支持开发！**\n\n[🔝 回到顶部](#哔哩哔哩评论观察者-bilibili-comment-analyzer)\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsansan0%2Fbilibili-comment-analyzer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsansan0%2Fbilibili-comment-analyzer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsansan0%2Fbilibili-comment-analyzer/lists"}