Heim >Backend-Entwicklung >Python-Tutorial >python实现模拟按键,自动翻页看u17漫画

python实现模拟按键,自动翻页看u17漫画

WBOY
WBOYOriginal
2016-06-10 15:17:091307Durchsuche

python
适用于windows平台
使用 win32gui,win32api,win32con 包

simu_read.py

复制代码 代码如下:

#-*- coding=utf-8 -*-
'''
模拟按键翻页
Usage:python simu_read.py 10 1.5
10表示翻10页,1.5表示在一页中按pgdn的时间间隔为1.5s
一页pgdn 3 次,之后按→翻到下一页
把浏览器打开到u17要看的漫画中,之后启动该程序,再切回u17
便可以自动翻页看漫画了。
仅供娱乐,了解python模拟按键
'''
import win32gui,win32api,win32con
from ctypes import *
import time
import threading
import sys
''' # mouse click is not used here ,-> can replace it
def get_cursor_pos():
    x,y = win32gui.GetCursorPos()
    return (x,y)
def mouse_move(x,y):
    windll.user32.SetCursorPos(x, y)
def mouse_click(x=None,y=None):
    print 'mouse_click'
    if not x is None and not y is None:
        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)
def test_pos():
    for i in range(0,10):
        time.sleep(0.5)
        print get_cursor_pos()
'''
def key_up(key_num):
    win32api.keybd_event(key_num,0,0,0)
    win32api.keybd_event(key_num,0,win32con.KEYEVENTF_KEYUP,0)
def init_dict():
    dict1 = {"PageDown":34,'RightArrow':39}
    return dict1
if __name__ == '__main__':
    if len(sys.argv) != 3:
        print 'Usage:python simu_read.py '
        sys.exit(-1)
    try:
        pagenum = int(sys.argv[1])
        interval = float(sys.argv[2])
    except ValueError:
        print 'Usage:python simu_read.py '
        print ' should be the type of int'
        print ' should be the type of float'
        sys.exit(-1)
    if pagenum 10000:
        print 'pagenum should be in the range [1,10000]'
        sys.exit(-1)
    if interval 60:
        print 'interval should be in the range [0.1,60]'
        sys.exit(-1)
    key_dict = init_dict()
    stsec = 2
    print 'start in '+str(stsec)+' seconds...'
    time.sleep(stsec)
    for i in range(0,pagenum):
        for j in range(0,3):#generally,the height of one page is not more than 3 screensize
            print 'PageDown'
            key_up(key_dict['PageDown'])
            time.sleep(interval)
        key_up(key_dict['RightArrow'])
        print 'Next page'
        time.sleep(interval+0.2)#delay
  

以上就是本文分享的全部内容了,希望大家能够喜欢。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn