使用Python和pywin32自动化数据录入

0 投票
1 回答
3403 浏览
提问于 2025-04-17 12:55

我正在尝试写一个Python脚本,用来把数据输入到任何表单里。

这是我目前写的代码:

def pasteNum(n):
    win32clipboard.OpenClipboard()
    win32clipboard.EmptyClipboard()
    win32clipboard.SetClipboardData(win32con.CF_TEXT, str(n))
##CTRL-A
    win32api.keybd_event(win32con.VK_LCONTROL,0x1d, 0, 0)
    win32api.keybd_event(win32api.VkKeyScan('A'),0x1e, 0, 0)
    win32api.keybd_event(win32api.VkKeyScan('A'),0x9e, win32con.KEYEVENTF_KEYUP, 0)
    win32api.keybd_event(win32con.VK_LCONTROL,0x9d, win32con.KEYEVENTF_KEYUP, 0)
    time.sleep(.1)
##CTRL-V
    win32api.keybd_event(win32con.VK_LCONTROL,0x1d, 0, 0)
    win32api.keybd_event(win32api.VkKeyScan('V'),0xaf, 0, 0)
    win32api.keybd_event(win32api.VkKeyScan('V'),0x2f, win32con.KEYEVENTF_KEYUP, 0)
    win32api.keybd_event(win32con.VK_LCONTROL,0x9d, win32con.KEYEVENTF_KEYUP, 0)
    print "CTRL-V"
    time.sleep(.1)

代码中的Ctrl-A部分是可以正常工作的。不过,它无法把数据粘贴到记事本或者其他任何当前选中的文本框里。有没有更好的方法来实现这个?我的代码有什么问题吗?

1 个回答

0

你可以看看 pywinauto 这个工具。

撰写回答