PyWxDump/pywxdump/db/__init__.py

56 lines
2.1 KiB
Python

# -*- coding: utf-8 -*-#
# -------------------------------------------------------------------------------
# Name: __init__.py.py
# Description:
# Author: xaoyaoo
# Date: 2024/04/15
# -------------------------------------------------------------------------------
import pandas as pd
from .utils import download_file
from .dbFavorite import FavoriteHandler
from .dbMSG import MsgHandler
from .dbMicro import MicroHandler
from .dbMedia import MediaHandler
from .dbOpenIMContact import OpenIMContactHandler
from .dbPublicMsg import PublicMsgHandler
from .dbOpenIMMedia import OpenIMMediaHandler
from .export.exportCSV import export_csv
from .export.exportJSON import export_json
class DBHandler(MicroHandler, MediaHandler, OpenIMContactHandler, PublicMsgHandler, OpenIMMediaHandler,
FavoriteHandler):
_class_name = "DBHandler"
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.MSG_exist = self.Msg_tables_exist()
self.Micro_exist = self.Micro_tables_exist()
self.Media_exist = self.Media_tables_exist()
self.OpenIMContact_exist = self.OpenIMContact_tables_exist()
self.PublicMsg_exist = self.PublicMSG_tables_exist()
self.OpenIMMedia_exist = self.OpenIMMedia_tables_exist()
self.Favorite_exist = self.Favorite_tables_exist()
if self.MSG_exist: # 添加索引 StrTalker
self.Msg_add_index()
if self.PublicMsg_exist: # 添加索引 StrTalker
self.PublicMsg_add_index()
if self.Micro_exist: # 添加索引 StrTalker
self.Micro_add_index()
# print(self.MSG_exist, self.Micro_exist, self.Media_exist, self.OpenIMContact_exist, self.PublicMsg_exist,
# self.OpenIMMedia_exist, self.Favorite_exist)
def get_user(self, word=None, wxids=None, labels=None):
"""
获取联系人列表
"""
users = self.get_user_list(word=word, wxids=wxids, label_ids=labels)
if self.OpenIMContact_exist:
users.update(self.get_im_user_list(word=word, wxids=wxids))
return users