利用python自动代开记事本,输入文章,并保存,关闭记事本等操作。代码记录。
import win32gui
import win32con
import win32api
import time
def get_menu_item_txt(menu,idx):
import win32gui_struct
mii, extra = win32gui_struct.EmptyMENUITEMINFO() #新建一个win32gui的空的结构体mii
win32gui.GetMenuItemInfo(menu, idx, True, mii) #将子菜单内容获取到mii
ftype, fstate, wid, hsubmenu, hbmpchecked, hbmpunchecked,\
dwitemdata, text, hbmpitem = win32gui_struct.UnpackMENUITEMINFO(mii) #解包mii
return text
xuhao=win32api.ShellExecute(1,'open','D:\DESKTOP\\test.txt','','',1)
print('正在打开软件,请稍等。。。。')
time.sleep(5)
handle=win32gui.FindWindow(None,'test.txt - 记事本')
handleEdit=win32gui.FindWindowEx(handle,None,'EDIT',None)
menu=win32gui.GetMenu(handle)
menu1=win32gui.GetSubMenu(menu,0)#子菜单文件,编辑,格式等
# for i in range(5):
# print(get_menu_item_txt(menu,i))
content=['人生若只如初见,','何事秋风悲画扇。',
'等闲变却故人心,','却道故人心易变。',
'骊山语罢清宵半,','泪雨霖铃终不怨。',
'何如薄幸锦衣郎,','比翼连枝当日愿。' ,'《木兰花·拟古决绝词柬友》 清代 纳兰性德']
for index,li in enumerate(content):
for cont in li:
print(cont)
win32gui.SendMessage(handleEdit, win32con.WM_CHAR, ord(cont), 0)
time.sleep(0.2)
if index%2!=0:
win32api.keybd_event(13,0,0,0)
time.sleep(0.5)
win32api.keybd_event(13,0,win32con.KEYEVENTF_KEYUP,0)
cmdId=win32gui.GetMenuItemID(menu1,3)#获取保存按钮
win32gui.PostMessage(handle,win32con.WM_COMMAND,cmdId,0)#点击保存
win32gui.PostMessage(handle,win32con.WM_CLOSE,0,0)#关闭窗口