(python库)利用pywinauto发微信消息

from pywinauto.application import Application
from psutil import process_iter
from pywinauto import mouse
from time import sleep
for pid_temp in process_iter():
    pid_dic = pid_temp .as_dict(attrs=['pid','name'])
    if pid_dic['name'] == 'WeChat.exe':      #找到微信的pid
        app = Application(backend='uia')
        app.connect(process=pid_dic['pid'])
        win = app[u'微信']                   #实例化       
        def click_one(title='', control_type='', button='left', found_index=0, left=10, top=10, times=1):
            if title == '' and control_type == '':
                raise ValueError('控件名和控件类型不可为空!')
            position = win.child_window(title=title, control_type=control_type, found_index=found_index).rectangle()
            for i in range(times):
                mouse.click(button=button, coords=(position.left + left, position.top + top))
                if times > 1:
                    sleep(0.2)
        #在此处加入循环从Excel中读取数据替换"文件传输助手"和'消息',即可实现批量发送消息
        click_one(title='搜索', control_type='Edit', times=2)
        sleep(2)
        win.type_keys("文件传输助手")
        sleep(0.5)
        win.type_keys('{ENTER}')
        click_one(title='输入', control_type='Edit')
        win.type_keys('消息')
        sleep(0.5)
        win.type_keys('{ENTER}')

 

posted @ 2022-09-16 13:18  十万神马  阅读(309)  评论(0编辑  收藏  举报