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

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-10 15:17:091338browse

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
  

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

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn