diff --git a/pywxdump/__init__.py b/pywxdump/__init__.py index f98e849..32213fb 100644 --- a/pywxdump/__init__.py +++ b/pywxdump/__init__.py @@ -9,6 +9,7 @@ from .wx_info import BiasAddr, read_info, get_wechat_db, encrypt, batch_decrypt, from .wx_info import merge_copy_db, merge_msg_db, merge_media_msg_db, merge_db from .analyzer.db_parsing import read_img_dat, read_emoji, decompress_CompressContent, read_audio_buf, read_audio, \ parse_xml_string, read_BytesExtra +from .analyzer import export_csv from .ui import app_show_chat, get_user_list, export import os, json diff --git a/pywxdump/analyzer/__init__.py b/pywxdump/analyzer/__init__.py index cf93712..c79f6fe 100644 --- a/pywxdump/analyzer/__init__.py +++ b/pywxdump/analyzer/__init__.py @@ -6,3 +6,4 @@ # Date: 2023/09/27 # ------------------------------------------------------------------------------- from .db_parsing import read_img_dat, read_emoji, decompress_CompressContent, read_audio_buf, read_audio, parse_xml_string,read_BytesExtra +from .export_chat import export_csv diff --git a/pywxdump/cli.py b/pywxdump/cli.py index 6858690..210add4 100644 --- a/pywxdump/cli.py +++ b/pywxdump/cli.py @@ -245,10 +245,24 @@ class MainExportChatRecords(): sb_decrypt.add_argument("-fs", "--filestorage_path", type=str, help="(可选)文件夹FileStorage的路径(用于显示图片)", required=False, metavar="") + sb_decrypt.add_argument("-t", "--type", type=str, help="导出类型(可选:html,txt)", required=False, + default="html", + metavar="") return sb_decrypt def run(self, args): # 从命令行参数获取值 + t = args.type + if t not in ["html", "txt"]: + print("[-] 未知的导出类型") + return + if t == "txt": + try: + export_csv(args.username, args.outpath, args.msg_path, page_size=1000000) + except Exception as e: + print(e) + print("[-] 导出失败") + return try: from flask import Flask, request, jsonify, render_template, g import logging