Files
wxbot/READEME.md
T

52 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# wxbot
微信聊天记录自动存sqlite数据库,基于微信网页版。注意,Web版获取不到微信用户的微信ID,所得到的用户名/ID是仅当前会话有效的,因此只有根据备注名在数据库中识别用户比较靠谱。
项目fork自[@Urinx/WeixinBot](https://github.com/Urinx/WeixinBot),我只是加了个存到sqlite的壳,感谢老哥的网页版微信API。
## 数据表结构
| 字段名 | 类型 | 说明 |
| -- | -- | -- |
| msg_id| TEXT | 消息ID |
|create_time | INTEGER | 创建时间,Unix时间戳 |
| msg_type | INTEGER | 消息类型,1-文本,3-图片,34-语音,43-视频,0-其它
| content | TEXT | 消息的文本内容
| from_id | TEXT | 消息发送者ID(不是微信ID,没啥用),如果是来自群的消息此字段为空
| from_name | TEXT | 消息发送者的备注,没备注就昵称,如果是来自群的消息此字段为空
| from_nickname | TEXT | 消息发送者的昵称,如果是来自群的消息此字段为空
| to_id | TEXT | 接收者ID,如果是发送到群的消息此字段为空
| to_name | TEXT | 接收者备注,没备注就昵称,如果是发送到群的消息此字段为空
| to_nickname | TEXT | 接收者昵称,如果是发送到群的消息此字段为空
| group_id | TEXT | 如果是群消息则为群的ID否则为空,照样,没啥用
| group_name | TEXT | 如果是群消息则为群聊名称(应该吧🤣我不关注群消息),否则为空
消息里的图片等文件以`img_``voice_`等前缀 + 消息ID存储于命令行参数给定的数据目录中。
其它信息请参考[项目@Urinx/WeixinBot](https://github.com/Urinx/WeixinBot)。
## 使用
### 克隆仓库并安装python依赖
```shell
# 不适用win系统
git clone https://github.com/mattuylee/wxbot.git
cd wxbot
python3 -m venv ./venv
source ./venv/bin/activate
pip3 install -r ./requirements.txt
```
### 运行
`python ./main.py -f <DB_FILE> -d <DATA_DIR>`
其中`DB_FILE`是sqlite数据库文件路径,`DATA_DIR`是图片视频等数据的存储目录。
支持sqlcipher加密,程序启动会要求输入密码,如不需要加密可留空直接回车。注意,以后每次启动必须输入相同的密码。暂不支持修改密码,可自行安装sqlcipher打开数据库修改密码。
未加密数据库可直接通过sqlite3打开,加密数据库需要sqlcipher才能打开。程序只负责记录数据,没有读取能力。
### 其它
关于表情包,如果是从表情商店里添加的表情包网页版微信是获取不到的,为了保护创作者的权益。这倒是可以理解。
如果发现无法登录先试试在浏览器登录网页版微信,有可能是腾讯为了“安全”限制了你的微信帐号在网页登录。
最后,祝腾讯早点倒闭。