[Python] 纯文本查看 复制代码#!/usr/bin/env python

#-*- encoding: gbk -*-

import pyHook#用于键盘监听

import pythoncom

import sys

import os.path

import win32clipboard as w

import win32con

import win32api

import thread

from time import sleep

from ctypes import *

code_file = open("选课代码.txt", 'r')

code = code_file.read().strip("\n")

code_list = code.split('\n')#得到由选课代码组成的列表

def onKeyboardEvent(event):

if str(event.Key)=='Escape':#若输入“Esc”则将所有用到的按键复位并退出

win32api.keybd_event(86,0,win32con.KEYEVENTF_KEYUP,0)

win32api.keybd_event(17,0,win32con.KEYEVENTF_KEYUP,0)

win32api.keybd_event(13,0,win32con.KEYEVENTF_KEYUP,0)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)

sys.exit()

return True

def quiting():

hm = pyHook.HookManager()#键盘监听

hm.KeyDown = onKeyboardEvent

hm.HookKeyboard()

pythoncom.PumpMessages()

def setText(aString):#设置剪切板内容

w.OpenClipboard()

w.EmptyClipboard()

w.SetClipboardData(win32con.CF_TEXT, aString)

w.CloseClipboard()

if __name__=='__main__':

sleep(3)

thread.start_new_thread(quiting,())#用一个进程监听键盘输入

while 1 :

for i in range(0,len(code_list)):

windll.user32.SetCursorPos(335, 236)#改变鼠标位置至输入框前端

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)#鼠标左键复位

setText(code_list[i])#将第i条代码写入剪切板

win32api.keybd_event(17,0,0,0)#按下Ctrl键

win32api.keybd_event(86,0,0,0)#按下c键

win32api.keybd_event(86,0,win32con.KEYEVENTF_KEYUP,0)#ctrl键复位

win32api.keybd_event(17,0,win32con.KEYEVENTF_KEYUP,0)#c键复位

windll.user32.SetCursorPos(760, 236)#改变鼠标位置至“加入选课单按钮”

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)#按下鼠标左键

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)#鼠标左键复位

sleep(0.1)

win32api.keybd_event(13,0,0,0)#按下Enter键

win32api.keybd_event(13,0,win32con.KEYEVENTF_KEYUP,0)#Enter键复位

windll.user32.SetCursorPos(518, 236)#改变鼠标位置至输入框后端

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)#按下鼠标左键

sleep(0.1)

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐