python
適用于windows平臺(tái)
使用 win32gui,win32api,win32con 包
simu_read.py
#-*- coding=utf-8 -*-
'''
模擬按鍵翻頁(yè)
Usage:python simu_read.py 10 1.5
10表示翻10頁(yè),1.5表示在一頁(yè)中按pgdn的時(shí)間間隔為1.5s
一頁(yè)pgdn 3 次,之后按→翻到下一頁(yè)
把瀏覽器打開(kāi)到u17要看的漫畫中,之后啟動(dòng)該程序,再切回u17
便可以自動(dòng)翻頁(yè)看漫畫了。
僅供娛樂(lè),了解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 '
??????? print '
??????? sys.exit(-1)
??? if pagenum < 0 or pagenum > 10000:
??????? print 'pagenum should be in the range [1,10000]'
??????? sys.exit(-1)
??? if interval < 0.1 or 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
??
以上就是本文分享的全部?jī)?nèi)容了,希望大家能夠喜歡。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
