编程学习网 > 编程语言 > Python > Python教程—pywin32实现自动写文字到记事本
2023
10-30

Python教程—pywin32实现自动写文字到记事本


win32gui、win32con、win32api,要使用这三个模块需要先安装pywin32。本文就为大家介绍了如何利用这些模块实现自动操作电脑,感兴趣的可以进一步了解一下。本篇内容将介绍自动写入李白诗词到记事本。

win32gui:模块定义了Windows下关于图形操作的API,如查找窗口句柄的函数FindWindow和FindWindowEx;
win32con:模块内定义了Windows API内的宏;
win32api:win32api为Microsoft 32位平台的应用程序编程接口,可以模拟按键操作。
pip install pywin32


↓ 源码如下 ↓

import win32gui
import win32con
import win32api
import time

win32api.ShellExecute(1, 'open', r'C:\Users\Ms-xiao\Desktop\李白.txt', '', '', 1)
print('正在打开记事本...')

time.sleep(4)
handle = win32gui.FindWindow(None,'李白 - 记事本')
print('记事本窗口句柄:',handle)
handleEdit = win32gui.FindWindowEx(handle, None, 'EDIT', None)

menu = win32gui.GetMenu(handle)
subMenu = win32gui.GetSubMenu(menu, 0)

poetry_content='''
将进酒
李白〔唐代〕
君不见黄河之水天上来,奔流到海不复回。
君不见高堂明镜悲白发,朝如青丝暮成雪。
人生得意须尽欢,莫使金樽空对月。
天生我材必有用,千金散尽还复来。
烹羊宰牛且为乐,会须一饮三百杯。
岑夫子,丹丘生,将进酒,杯莫停。
与君歌一曲,请君为我倾耳听。
钟鼓馔玉不足贵,但愿长醉不愿醒。
古来圣贤皆寂寞,惟有饮者留其名。
陈王昔时宴平乐,斗酒十千恣欢谑。
主人何为言少钱,径须沽取对君酌。
五花马、千金裘,呼儿将出换美酒,与尔同销万古愁。
'''
#poetry_list = list(poetry_content.replace('\n',''))
#对每一行进行分割与写入,而不是所有的行一起分割,一起写入
poetry_list = poetry_content.split('\n')
for i in poetry_list:
    for word in i:
        #print(word)
        win32gui.SendMessage(handleEdit, win32con.WM_CHAR, ord(word), 0)
        time.sleep(0.05)

    # 模拟按下回车键的操作
    win32api.keybd_event(13, 0, 0, 0)
    time.sleep(0.05)
    win32api.keybd_event(13, 0, win32con.KEYEVENTF_KEYUP, 0)

#获取保存按钮
cmdId=win32gui.GetMenuItemID(subMenu, 3)
#点击保存
win32gui.PostMessage(handle, win32con.WM_COMMAND, cmdId, 0)
#关闭窗口
win32gui.PostMessage(handle, win32con.WM_CLOSE, 0, 0)

print('诗词写入完成!!')

以上就是Python教程—pywin32实现自动写文字到记事本的详细内容,想要了解更多Python教程欢迎持续关注编程学习网。

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取