python实现模拟按键,自动翻页看u17漫画
python
适用于windows平台
使用win32gui,win32api,win32con包
simu_read.py
#-*-coding=utf-8-*- ''' 模拟按键翻页 Usage:pythonsimu_read.py101.5 10表示翻10页,1.5表示在一页中按pgdn的时间间隔为1.5s 一页pgdn3次,之后按→翻到下一页 把浏览器打开到u17要看的漫画中,之后启动该程序,再切回u17 便可以自动翻页看漫画了。 仅供娱乐,了解python模拟按键 ''' importwin32gui,win32api,win32con fromctypesimport* importtime importthreading importsys '''#mouseclickisnotusedhere,->canreplaceit defget_cursor_pos(): x,y=win32gui.GetCursorPos() return(x,y) defmouse_move(x,y): windll.user32.SetCursorPos(x,y) defmouse_click(x=None,y=None): print'mouse_click' ifnotxisNoneandnotyisNone: mouse_move(x,y) time.sleep(0.05) win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,0,0,0,0) time.sleep(0.05) win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,0,0,0,0) deftest_pos(): foriinrange(0,10): time.sleep(0.5) printget_cursor_pos() ''' defkey_up(key_num): win32api.keybd_event(key_num,0,0,0) win32api.keybd_event(key_num,0,win32con.KEYEVENTF_KEYUP,0) definit_dict(): dict1={"PageDown":34,'RightArrow':39} returndict1 if__name__=='__main__': iflen(sys.argv)!=3: print'Usage:pythonsimu_read.py<pagenum><interval>' sys.exit(-1) try: pagenum=int(sys.argv[1]) interval=float(sys.argv[2]) exceptValueError: print'Usage:pythonsimu_read.py<pagenum><interval>' print'<pagenum>shouldbethetypeofint' print'<interval>shouldbethetypeoffloat' sys.exit(-1) ifpagenum<0orpagenum>10000: print'pagenumshouldbeintherange[1,10000]' sys.exit(-1) ifinterval<0.1orinterval>60: print'intervalshouldbeintherange[0.1,60]' sys.exit(-1) key_dict=init_dict() stsec=2 print'startin'+str(stsec)+'seconds...' time.sleep(stsec) foriinrange(0,pagenum): forjinrange(0,3):#generally,theheightofonepageisnotmorethan3screensize print'PageDown' key_up(key_dict['PageDown']) time.sleep(interval) key_up(key_dict['RightArrow']) print'Nextpage' time.sleep(interval+0.2)#delay
以上就是本文分享的全部内容了,希望大家能够喜欢。