Skip to content

gitstq/wechatlog-explorer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔍 WeChatLog Explorer

微信聊天记录智能探索工具

Python License Platform

English | 繁體中文


🎉 项目介绍

WeChatLog Explorer 是一款专为微信用户设计的聊天记录智能探索工具。它能够帮助你:

  • 🔍 智能搜索 - 支持语义搜索和关键词搜索,快速找到历史消息
  • 📊 数据分析 - 可视化展示聊天统计数据
  • 📤 多格式导出 - 支持 JSON、CSV、HTML、TXT 格式导出
  • 💻 跨平台 - 支持 Windows、macOS、Linux
  • 🔒 完全本地 - 所有数据处理在本地完成,保护隐私

灵感来源

微信作为中国最流行的即时通讯工具,承载了 billions of users 的珍贵回忆。然而,官方并未提供完善的聊天记录导出和搜索功能。本项目旨在填补这一空白,让用户能够真正"拥有"自己的聊天数据。

自研差异化亮点

  1. 纯本地语义搜索 - 无需调用外部 AI API,使用 TF-IDF + 余弦相似度实现智能搜索
  2. 零配置运行 - 一键启动,无需复杂的环境配置
  3. 现代化 Web 界面 - 简洁美观的界面设计,还原微信聊天体验
  4. 多格式支持 - 自动识别 JSON、CSV、HTML 等多种聊天记录格式
  5. 中文分词优化 - 集成 jieba 分词,针对中文搜索特别优化

✨ 核心特性

📦 数据导入

  • ✅ 支持 JSON 格式聊天记录导入
  • ✅ 支持 CSV 格式聊天记录导入
  • ✅ 支持 HTML 格式聊天记录导入
  • ✅ 批量导入整个目录
  • ✅ 自动识别消息格式并标准化

🔍 智能搜索

  • 语义搜索 - 输入描述性语句,如"上周的聚餐安排"
  • 关键词搜索 - 精确匹配关键词
  • 混合搜索 - 智能结合语义和关键词
  • 搜索结果排序 - 按相关度排序
  • 搜索高亮 - 显示匹配度百分比

📊 数据管理

  • 聊天记录浏览 - 按时间线查看消息
  • 聊天列表 - 查看所有聊天会话
  • 数据统计 - 消息数量、联系人统计
  • 增量导入 - 支持重复导入不重复

📤 数据导出

  • JSON 导出 - 结构化数据格式
  • CSV 导出 - 表格格式,适合数据分析
  • HTML 导出 - 还原微信聊天界面
  • TXT 导出 - 纯文本格式

🌐 Web 界面

  • 响应式设计 - 支持桌面和移动端
  • 实时搜索 - 即时显示搜索结果
  • 美观界面 - 现代化 UI 设计
  • RESTful API - 提供完整 API 接口

🚀 快速开始

环境要求

  • Python 3.8 或更高版本
  • 2GB 以上可用内存
  • 100MB 以上磁盘空间

安装步骤

方式一:通过 pip 安装(推荐)

pip install wechatlog-explorer

方式二:从源码安装

# 克隆仓库
git clone https://github.com/yourusername/wechatlog-explorer.git
cd wechatlog-explorer

# 安装依赖
pip install -r requirements.txt

# 安装包
pip install -e .

初始化

wechatlog init

启动 Web 界面

wechatlog web

访问 http://127.0.0.1:5000 即可使用 Web 界面。


📖 详细使用指南

导入聊天记录

从文件导入

wechatlog import /path/to/chat_history.json

从目录导入

wechatlog import /path/to/chat_exports/

支持的文件格式

格式 说明 示例
JSON 结构化消息数据 [{"sender": "张三", "content": "你好"}]
CSV 表格格式 sender,content,time
HTML 微信网页导出 微信网页版聊天记录

搜索消息

语义搜索

wechatlog search -q "上周的会议安排"

关键词搜索

wechatlog search -q "聚餐" -l 10

在特定聊天中搜索

wechatlog search -q "项目进度" -c chat_12345

导出数据

导出为 JSON

wechatlog export -f json -o backup.json

导出为 HTML

wechatlog export -f html -c chat_12345 -o chat_history.html

导出为 CSV

wechatlog export -f csv -o messages.csv

查看统计

wechatlog stats

输出示例:

📊 数据库统计

总消息数: 15,234
聊天会话: 42
联系人: 128
时间范围: 2023-01-15 ~ 2025-05-08

📋 聊天列表:
  - 家人群: 3,456 条消息
  - 工作群: 2,890 条消息
  - 张三: 1,234 条消息

💡 设计思路与迭代规划

技术选型

组件 技术 选型原因
后端框架 Flask 轻量、灵活、社区活跃
数据库 SQLite 零配置、单文件、适合本地应用
搜索算法 TF-IDF + 余弦相似度 无需外部 API、效果良好
中文分词 jieba 成熟、准确、支持自定义词典
前端 原生 HTML/JS 无依赖、加载快、易维护

架构设计

WeChatLog Explorer
├── Core Layer (核心层)
│   ├── Database (SQLite 操作)
│   ├── Parser (文件解析)
│   ├── Search (语义搜索)
│   └── Exporter (数据导出)
├── Web Layer (Web 层)
│   ├── Flask App
│   ├── RESTful API
│   └── Web UI
└── CLI Layer (命令行层)
    └── Click Commands

后续迭代计划

v1.1.0 (计划中)

  • 支持微信数据库直接解密(Windows)
  • 图片/视频等多媒体文件关联
  • 聊天数据可视化图表
  • 按时间范围筛选

v1.2.0 (计划中)

  • 聊天记录备份自动同步
  • 端到端加密存储
  • 多用户支持
  • 插件系统

v2.0.0 (远期规划)

  • 本地 LLM 集成(可选)
  • 智能聊天摘要
  • 情感分析
  • 跨设备同步

社区贡献方向

  1. 更多格式支持 - 支持更多聊天记录导出格式
  2. UI 主题 - 开发更多界面主题
  3. 语言支持 - 添加更多语言界面
  4. 性能优化 - 大数据量下的性能优化
  5. 测试覆盖 - 补充单元测试和集成测试

📦 打包与部署

打包为可执行文件

Windows

pip install pyinstaller
pyinstaller --onefile --name wechatlog main.py

macOS

pip install pyinstaller
pyinstaller --onefile --windowed --name WeChatLog main.py

Linux

pip install pyinstaller
pyinstaller --onefile --name wechatlog main.py

Docker 部署

FROM python:3.11-slim

WORKDIR /app
COPY . /app

RUN pip install -r requirements.txt

EXPOSE 5000

CMD ["python", "-m", "wechatlog.web.app"]

构建和运行:

docker build -t wechatlog-explorer .
docker run -p 5000:5000 -v $(pwd)/data:/data wechatlog-explorer

🤝 贡献指南

我们欢迎所有形式的贡献!

提交 Issue

  • 使用清晰的标题描述问题
  • 提供复现步骤
  • 附上错误日志
  • 说明运行环境

提交 Pull Request

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

代码规范

  • 遵循 PEP 8 规范
  • 添加必要的注释
  • 编写单元测试
  • 更新文档

📄 开源协议

本项目采用 MIT License 开源协议。

MIT License

Copyright (c) 2025 WeChatLog Explorer

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction...

🙏 致谢


⭐ 如果这个项目对你有帮助,请给我们一个 Star!

GitHub | 问题反馈

About

微信聊天记录智能探索工具 - Smart WeChat chat history exploration tool with semantic search

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages