MCPcopy
hub / github.com/cluic/wxauto / _getmsgs

Method _getmsgs

wxauto/elements.py:65–93  ·  view source on GitHub ↗
(self, msgitems, savepic=False, savefile=False, savevoice=False)

Source from the content-addressed store, hash-verified

63 return ParseMessage(Msg, MsgItem, self)
64
65 def _getmsgs(self, msgitems, savepic=False, savefile=False, savevoice=False):
66 msgs = []
67 for MsgItem in msgitems:
68 if MsgItem.ControlTypeName == 'ListItemControl':
69 msgs.append(self._split(MsgItem))
70
71 msgtypes = [
72 f"[{self._lang('图片')}]",
73 f"[{self._lang('文件')}]",
74 f"[{self._lang('语音')}]",
75 ]
76
77 if not [i for i in msgs if i.content[:4] in msgtypes]:
78 return msgs
79
80 for msg in msgs:
81 if msg.type not in ('friend', 'self'):
82 continue
83 if msg.content.startswith(f"[{self._lang('图片')}]") and savepic:
84 imgpath = self._download_pic(msg.control)
85 msg.content = imgpath if imgpath else msg.content
86 elif msg.content.startswith(f"[{self._lang('文件')}]") and savefile:
87 filepath = self._download_file(msg.control)
88 msg.content = filepath if filepath else msg.content
89 elif msg.content.startswith(f"[{self._lang('语音')}]") and savevoice:
90 voice_text = self._get_voice_text(msg.control)
91 msg.content = voice_text if voice_text else msg.content
92 msg.info[1] = msg.content
93 return msgs
94
95 def _download_pic(self, msgitem):
96 self._show()

Callers 4

GetAllMessageMethod · 0.80
GetNewMessageMethod · 0.80
GetNextNewMessageMethod · 0.80
GetAllMessageMethod · 0.80

Calls 5

_splitMethod · 0.95
_langMethod · 0.95
_download_picMethod · 0.95
_download_fileMethod · 0.95
_get_voice_textMethod · 0.95

Tested by

no test coverage detected