diff --git a/README.md b/README.md new file mode 100644 index 0000000..06a8873 --- /dev/null +++ b/README.md @@ -0,0 +1,51 @@ +# 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 -d ` +其中`DB_FILE`是sqlite数据库文件路径,`DATA_DIR`是图片视频等数据的存储目录。 + +支持sqlcipher加密,程序启动会要求输入密码,如不需要加密可留空直接回车。注意,以后每次启动必须输入相同的密码。暂不支持修改密码,可自行安装sqlcipher打开数据库修改密码。 + +未加密数据库可直接通过sqlite3打开,加密数据库需要sqlcipher才能打开。程序只负责记录数据,没有读取能力。 + +### 其它 +关于表情包,如果是从表情商店里添加的表情包网页版微信是获取不到的,为了保护创作者的权益。这倒是可以理解。 + +如果发现无法登录先试试在浏览器登录网页版微信,有可能是腾讯为了“安全”限制了你的微信帐号在网页登录。 + +最后,祝腾讯早点倒闭。