国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python uiautomation獲取微信內(nèi)容!聊天記錄、聊天列表、全都可獲取

這篇具有很好參考價(jià)值的文章主要介紹了Python uiautomation獲取微信內(nèi)容!聊天記錄、聊天列表、全都可獲取。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

Python uiautomation 是一個(gè)用于自動(dòng)化 GUI 測(cè)試和操作的庫(kù),它可以模擬用戶操作來(lái)執(zhí)行各種任務(wù)。
通過(guò)這個(gè)庫(kù),可以使用Python腳本模擬人工點(diǎn)擊,人工操作界面。本文使用 Python uiautomation 進(jìn)行微信電腦版的操作。

以下是本次實(shí)驗(yàn)的版本號(hào)。

uiautomation 微信,Python,python

你需要安裝 uiautomation

pip install uiautomation

示例代碼

import time
import uiautomation as auto
import re
from plyer import notification
 
notification_history = {}  # 歷史消息
 
def check_wechat_messages():
 
    # 獲取微信窗口
    wechat_win = auto.WindowControl(Name="微信", ClassName="WeChatMainWndForPC")
 
    shoukuanWin = wechat_win.ListControl(Name="會(huì)話")
    bbb = shoukuanWin.GetChildren()
 
    for chatMsg in bbb:
        if "條新消息" in chatMsg.Name:
 
            # 計(jì)算消息條數(shù)
            match = re.match(r'([a-zA-Z0-9]+)(\d+)條新消息', chatMsg.Name)
 
            if match:
                nickname = match.group(1)
                message_count = int(match.group(2))
 
                printInfo = f"{nickname} 給你發(fā)送了 {message_count} 條消息"
                print(printInfo)
                print("------------")
 
                # 獲取消息列表控件
                xiaoxis = wechat_win.ListControl(Name="消息")
                 
                # 獲取消息列表控件的子控件
                xiaoxi_children = xiaoxis.GetChildren()
 
                # 獲取最后一個(gè)子控件
                last_xiaoxi = xiaoxi_children[-1]
 
                # 打印最后一條消息的內(nèi)容
                print(last_xiaoxi.Name)
 
                # 在指定時(shí)間內(nèi)不重發(fā)
                last_notification_time = notification_history.get((nickname, message_count), 0)
                current_time = time.time()
 
                if current_time - last_notification_time > 15:
 
                    # 依次發(fā)送
                    notification_title = f"來(lái)自 {nickname} 的 {message_count} 條消息"
                    notification_message = f"{last_xiaoxi.Name}"
 
                    notification.notify(
                        title=notification_title,
                        message=notification_message,
                        app_name="WeChat"
                    )
 
                    # 更新日志
                    notification_history[(nickname, message_count)] = current_time
 
if __name__ == "__main__":
    try:
        while True:
            check_wechat_messages()
            time.sleep(2)  #2秒檢測(cè)一次UI組件
    except KeyboardInterrupt:
        print("程序退出~")
    except Exception as e:
        print(f"程序執(zhí)行出現(xiàn)了問(wèn)題: {str(e)}")

代碼解析:

以上代碼使用?uiautomation?實(shí)時(shí)獲取微信聊天列表的消息狀態(tài),一旦有消息發(fā)過(guò)來(lái),就會(huì)獲取到發(fā)送人的微信昵稱以及發(fā)送的消息內(nèi)容、消息個(gè)數(shù)。

uiautomation 微信,Python,python

每2秒獲取一次UI控件的內(nèi)容,實(shí)測(cè)掛在后臺(tái)對(duì)CPU和內(nèi)存占用并無(wú)明顯影響,結(jié)合Python uiautomation的各種用法,可以做成自動(dòng)回復(fù)的功能。使用這款軟件,可以獲取到微信電腦版大部分控件的內(nèi)容。例如:微信聊天列表、群名稱、好友微信昵稱、群人數(shù)、微信號(hào)等。?

uiautomation 微信,Python,python

還可以獲取到群內(nèi)的每一條聊天內(nèi)容,獲取到你跟好友的聊天記錄。?

uiautomation 微信,Python,python只要?UISpy.exe?可獲取到的控件內(nèi)容,那么你用 Python就可以獲取到。

拓展

還可以用來(lái)做收款監(jiān)控。將【微信收款助手】這個(gè)公眾號(hào)單獨(dú)窗口出來(lái),然后監(jiān)控這個(gè)窗口。

妥妥的實(shí)現(xiàn)了一個(gè)PC收款監(jiān)控??梢杂脕?lái)做收款碼的支付回調(diào)。

uiautomation 微信,Python,python

import uiautomation as auto
import re
import time
 
def get_children_at_depth(control, target_depth, current_depth=0):
    children = control.GetChildren()
    result = []
 
    for child in children:
        if current_depth == target_depth:
            result.append(child)
        else:
            result.extend(get_children_at_depth(child, target_depth, current_depth + 1))
 
    return result
 
def process_last_child_information(previous_info):
    weixin = auto.WindowControl(Name="微信收款助手", ClassName="ChatWnd")
    xiaoxi = weixin.ListControl(Name="消息")
 
    target_depth = 5
    depth_5_children = get_children_at_depth(xiaoxi, target_depth)
 
    # 正則表達(dá)式模式
    pattern = r'收款到賬通知(\d+月\d+日 \d+:\d+)收款金額¥([0-9.]+)匯總'
 
    last_child = None
 
    for child in depth_5_children:
        match = re.search(pattern, child.Name)
        if match:
            last_child = child  # 保存最后一條子控件的引用
 
    # 在循環(huán)結(jié)束后,提取最后一條子控件的信息
    if last_child:
        match = re.search(pattern, last_child.Name)
        if match:
            date_time = match.group(1)
            amount = match.group(2)
 
            # 監(jiān)聽(tīng)下一筆
            if (date_time, amount) != previous_info:
                print("收款回調(diào):")
                print(date_time)
                print("金額:", amount)
                print("正在等待下一筆...")
                print("----------")
 
                previous_info = (date_time, amount)
 
    return previous_info
 
# 循環(huán)
previous_info = None
 
while True:
    previous_info = process_last_child_information(previous_info)
    # 每2秒執(zhí)行一次循環(huán)
    time.sleep(2)

請(qǐng)勿使用這種技術(shù)用于非法行為,僅供大家開(kāi)發(fā)一寫小工具自己用。

如果使用這種技術(shù)來(lái)進(jìn)行違法行為所帶來(lái)的責(zé)任自行負(fù)責(zé),與工具、教程作者、發(fā)布的平臺(tái)無(wú)關(guān)。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-763599.html

到了這里,關(guān)于Python uiautomation獲取微信內(nèi)容!聊天記錄、聊天列表、全都可獲取的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • python解密微信聊天記錄

    python解密微信聊天記錄

    鏈接: 傻瓜教程:使用小米系列手機(jī)提取微信聊天記錄并制作詞云圖 鏈接: 手機(jī)端微信聊天記錄數(shù)據(jù)庫(kù)解密過(guò)程

    2024年02月07日
    瀏覽(723)
  • 基于Python的微信聊天記錄分析——數(shù)據(jù)處理與分析

    基于Python的微信聊天記錄分析——數(shù)據(jù)處理與分析

    本篇為《基于Python的微信聊天記錄分析》系列的第二篇,主要講解獲取到聊天記錄數(shù)據(jù)之后,在Python環(huán)境下對(duì)其進(jìn)行數(shù)據(jù)處理、分析和可視化,涉及庫(kù)的安裝、相關(guān)操作的Python代碼等內(nèi)容。希望和大家多多交流,共同進(jìn)步! 數(shù)據(jù)分析的基礎(chǔ)是“數(shù)據(jù)”,俗話說(shuō)基礎(chǔ)不牢,地動(dòng)

    2024年02月19日
    瀏覽(89)
  • 基于Python的微信聊天記錄分析——可視化方法與主題模型構(gòu)建

    基于Python的微信聊天記錄分析——可視化方法與主題模型構(gòu)建

    本篇為《基于Python的微信聊天記錄分析》系列的第三篇,主要講解在Python環(huán)境下對(duì)聊天記錄進(jìn)行進(jìn)一步的可視化,并對(duì)聊天內(nèi)容進(jìn)行初步挖掘,涉及聊天記錄可視化方法、主題模型構(gòu)建等內(nèi)容。希望和大家多多交流,共同進(jìn)步! ?在上一篇中,我們將聊天記錄統(tǒng)計(jì)分析的結(jié)果

    2024年04月12日
    瀏覽(97)
  • 刪掉微信聊天記錄怎么恢復(fù) ?怎么恢復(fù)微信聊天記錄?

    刪掉微信聊天記錄怎么恢復(fù) ?怎么恢復(fù)微信聊天記錄?

    這個(gè)問(wèn)題沒(méi)有確定的答案,因?yàn)榛謴?fù)取決于許多因素,包括刪除聊天記錄的時(shí)間以及使用的設(shè)備類型。但是,有幾種方法可以成功恢復(fù)已刪除的微信歷史記錄,例如使用數(shù)據(jù)恢復(fù)軟件或聯(lián)系客戶支持。 如果你想將微信歷史轉(zhuǎn)移到另一臺(tái)設(shè)備上,第二種方法非常有用。如果您需

    2024年02月01日
    瀏覽(95)
  • 微信聊天記錄數(shù)據(jù)分析

    微信聊天記錄數(shù)據(jù)分析

    目錄 一、項(xiàng)目背景 二、數(shù)據(jù)準(zhǔn)備 三、數(shù)據(jù)預(yù)處理及描述性統(tǒng)計(jì) 四、數(shù)據(jù)分析 1.聊天小時(shí)、日、月分別匯總分布圖 2.聊天時(shí)間序列分布圖 3.高頻詞匯統(tǒng)計(jì) 4.詞云圖展示 五、其它探索性分析 2021年2月20日我和我女朋友第一次見(jiàn)面,之后開(kāi)啟了我們兩個(gè)人的故事,時(shí)隔一年我想將

    2024年02月04日
    瀏覽(90)
  • 怎么恢復(fù)微信聊天記錄

    微信是一款非常受歡迎的社交軟件,它可以讓我們輕松跟朋友聊天,分享照片和視頻,也可以讓我們隨時(shí)隨地了解最新的新聞和信息。然而,如果您丟失了微信聊天記錄,你會(huì)發(fā)現(xiàn)無(wú)法恢復(fù)。在本文中,我們將介紹 怎么恢復(fù)微信聊天記錄 。 第一種方法:通過(guò)微信自帶的 聊天

    2024年02月08日
    瀏覽(89)
  • 信息搜集-讀取微信聊天記錄

    信息搜集-讀取微信聊天記錄

    在攻防演練的釣魚(yú)上線后,如果被釣的人使用微信,這時(shí)候可以通過(guò)讀取微信里的聊天記錄進(jìn)行進(jìn)一步搜集。 使用公開(kāi)Github項(xiàng)目 https://github.com/AdminTest0/SharpWxDump 編譯命令:C:WindowsMicrosoft.NETFrameworkv4.0.30319csc.exe .Program.cs /platform:x86 首先獲取微信的Wechatkey ==》找到對(duì)應(yīng)聊天

    2023年04月10日
    瀏覽(93)
  • 微信聊天記錄導(dǎo)出(華為手機(jī)版)

    關(guān)于微信記錄導(dǎo)出的有比較多的方法, 在這里進(jìn)行匯總下, 以下都是經(jīng)過(guò)我親測(cè)可行的, 不要去買一些付費(fèi)的軟件, 自己手動(dòng)操作下就好啦 主要參考這兩篇文章: 微信聊天記錄導(dǎo)出為電腦txt文件教程 微信聊天記錄導(dǎo)出(2020新版) 具體步驟: 1.先登錄電腦版微信 2.備份與遷移, 選擇備

    2024年02月09日
    瀏覽(93)
  • 【python+wechaty+docker+nodejs】24年從0開(kāi)始搭建使用python-wechaty接入微信聊天機(jī)器人全過(guò)程記錄

    全網(wǎng)搜索了所有相關(guān)文章,由于個(gè)人原是java老程序員,對(duì)python有點(diǎn)興趣,正好這個(gè)機(jī)器人的python資料比較多,因此就著手嘗試。 在網(wǎng)上基本沒(méi)有找到python-wechaty的完整說(shuō)明的使用手冊(cè)因此自己寫一個(gè)記錄一下全過(guò)程。 真正的從0開(kāi)始。只有系統(tǒng)。沒(méi)有其他的情況下,都是全新

    2024年01月24日
    瀏覽(20)
  • 微信聊天記錄導(dǎo)出的開(kāi)源項(xiàng)目,火了!

    微信聊天記錄導(dǎo)出的開(kāi)源項(xiàng)目,火了!

    大家好,我是 Jack。 今天又是分享開(kāi)源項(xiàng)目的一天。 最近想訓(xùn)練一個(gè)符合某人說(shuō)話風(fēng)格的 AI,微信的聊天記錄里就有著豐富的訓(xùn)練數(shù)據(jù)。 聊天記錄是珍貴的記憶,也是每一場(chǎng)對(duì)話、每一個(gè)互動(dòng)的真情流露。 想要拿到這些數(shù)據(jù),無(wú)論是保存?zhèn)浞葸€是用于 AI 訓(xùn)練,手動(dòng)拷貝都不

    2024年01月16日
    瀏覽(85)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包