最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

windows下python模擬鼠標(biāo)點(diǎn)擊和鍵盤輸示例

 更新時間:2014年02月28日 14:45:42   作者:  
這篇文章主要介紹了windows下python模擬鼠標(biāo)點(diǎn)擊和鍵盤輸示例,需要的朋友可以參考下

需要先裝pywin32,windows下調(diào)用winapi的接口

復(fù)制代碼 代碼如下:

#
# _*_ coding:UTF-8 _*_
__author__ = 'shanl'

import win32api
import win32con
import win32gui
from ctypes import *
import time

VK_CODE = {
    'backspace':0x08,
    'tab':0x09,
    'clear':0x0C,
    'enter':0x0D,
    'shift':0x10,
    'ctrl':0x11,
    'alt':0x12,
    'pause':0x13,
    'caps_lock':0x14,
    'esc':0x1B,
    'spacebar':0x20,
    'page_up':0x21,
    'page_down':0x22,
    'end':0x23,
    'home':0x24,
    'left_arrow':0x25,
    'up_arrow':0x26,
    'right_arrow':0x27,
    'down_arrow':0x28,
    'select':0x29,
    'print':0x2A,
    'execute':0x2B,
    'print_screen':0x2C,
    'ins':0x2D,
    'del':0x2E,
    'help':0x2F,
    '0':0x30,
    '1':0x31,
    '2':0x32,
    '3':0x33,
    '4':0x34,
    '5':0x35,
    '6':0x36,
    '7':0x37,
    '8':0x38,
    '9':0x39,
    'a':0x41,
    'b':0x42,
    'c':0x43,
    'd':0x44,
    'e':0x45,
    'f':0x46,
    'g':0x47,
    'h':0x48,
    'i':0x49,
    'j':0x4A,
    'k':0x4B,
    'l':0x4C,
    'm':0x4D,
    'n':0x4E,
    'o':0x4F,
    'p':0x50,
    'q':0x51,
    'r':0x52,
    's':0x53,
    't':0x54,
    'u':0x55,
    'v':0x56,
    'w':0x57,
    'x':0x58,
    'y':0x59,
    'z':0x5A,
    'numpad_0':0x60,
    'numpad_1':0x61,
    'numpad_2':0x62,
    'numpad_3':0x63,
    'numpad_4':0x64,
    'numpad_5':0x65,
    'numpad_6':0x66,
    'numpad_7':0x67,
    'numpad_8':0x68,
    'numpad_9':0x69,
    'multiply_key':0x6A,
    'add_key':0x6B,
    'separator_key':0x6C,
    'subtract_key':0x6D,
    'decimal_key':0x6E,
    'divide_key':0x6F,
    'F1':0x70,
    'F2':0x71,
    'F3':0x72,
    'F4':0x73,
    'F5':0x74,
    'F6':0x75,
    'F7':0x76,
    'F8':0x77,
    'F9':0x78,
    'F10':0x79,
    'F11':0x7A,
    'F12':0x7B,
    'F13':0x7C,
    'F14':0x7D,
    'F15':0x7E,
    'F16':0x7F,
    'F17':0x80,
    'F18':0x81,
    'F19':0x82,
    'F20':0x83,
    'F21':0x84,
    'F22':0x85,
    'F23':0x86,
    'F24':0x87,
    'num_lock':0x90,
    'scroll_lock':0x91,
    'left_shift':0xA0,
    'right_shift ':0xA1,
    'left_control':0xA2,
    'right_control':0xA3,
    'left_menu':0xA4,
    'right_menu':0xA5,
    'browser_back':0xA6,
    'browser_forward':0xA7,
    'browser_refresh':0xA8,
    'browser_stop':0xA9,
    'browser_search':0xAA,
    'browser_favorites':0xAB,
    'browser_start_and_home':0xAC,
    'volume_mute':0xAD,
    'volume_Down':0xAE,
    'volume_up':0xAF,
    'next_track':0xB0,
    'previous_track':0xB1,
    'stop_media':0xB2,
    'play/pause_media':0xB3,
    'start_mail':0xB4,
    'select_media':0xB5,
    'start_application_1':0xB6,
    'start_application_2':0xB7,
    'attn_key':0xF6,
    'crsel_key':0xF7,
    'exsel_key':0xF8,
    'play_key':0xFA,
    'zoom_key':0xFB,
    'clear_key':0xFE,
    '+':0xBB,
    ',':0xBC,
    '-':0xBD,
    '.':0xBE,
    '/':0xBF,
    '`':0xC0,
    ';':0xBA,
    '[':0xDB,
    '\\':0xDC,
    ']':0xDD,
    "'":0xDE,
    '`':0xC0}

class POINT(Structure):
    _fields_ = [("x", c_ulong),("y", c_ulong)]

def get_mouse_point():
    po = POINT()
    windll.user32.GetCursorPos(byref(po))
    return int(po.x), int(po.y)

def mouse_click(x=None,y=None):
    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)

def mouse_dclick(x=None,y=None):
    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)
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)

def mouse_move(x,y):
    windll.user32.SetCursorPos(x, y)

def key_input(str=''):
    for c in str:
        win32api.keybd_event(VK_CODE[c],0,0,0)
        win32api.keybd_event(VK_CODE[c],0,win32con.KEYEVENTF_KEYUP,0)
        time.sleep(0.01)

def t0():
    pass

def t2():
    mouse_click(800,200)
    for c in 'hello':
        win32api.keybd_event(65,0,0,0) #a鍵位碼是86
        win32api.keybd_event(65,0,win32con.KEYEVENTF_KEYUP,0)
    #print get_mouse_point()

def t1():
    #mouse_move(1024,470)aa
    #time.sleep(0.05)
    #mouse_dclick()HELLO

    mouse_dclick(1024,470)

def t3():
    mouse_click(1024,470)
    str = 'hello'
    for c in str:
        win32api.keybd_event(VK_CODE[c],0,0,0) #a鍵位碼是86
        win32api.keybd_event(VK_CODE[c],0,win32con.KEYEVENTF_KEYUP,0)
        time.sleep(0.01)

def t4():
    mouse_click(1024,470)
    str = 'hello'
    key_input(str)

if __name__ == "__main__":
    t4()
    #t3()
    #t2()
    #t1()
    t0()

相關(guān)文章

  • 使用Python設(shè)置、更改及移除Word文檔密碼

    使用Python設(shè)置、更改及移除Word文檔密碼

    給Word文檔設(shè)置打開密碼是常見的Word文檔加密方式,如果我們需要對大量的Word文檔進(jìn)行加密、解密處理,Python是一個不錯的選擇,本文將介紹如何使用Python設(shè)置、更改或移除Word文檔的加密,需要的朋友可以參考下
    2024-03-03
  • python中的deque基本用法詳解

    python中的deque基本用法詳解

    Python?中的?deque是一個低級別的、高度優(yōu)化的雙端隊(duì)列,對于實(shí)現(xiàn)優(yōu)雅、高效的Pythonic隊(duì)列和堆棧很有用,這篇文章主要介紹了python中的deque基本用法的相關(guān)資料,需要的朋友可以參考下
    2017-11-11
  • Python如何腳本過濾文件中的注釋

    Python如何腳本過濾文件中的注釋

    在本篇文章里小編給大家分享的是關(guān)于Python腳本過濾文件中的注釋方法以及實(shí)例,需要的朋友們可以學(xué)習(xí)下。
    2020-05-05
  • Python?ArcPy實(shí)現(xiàn)批量對大量遙感影像相減做差

    Python?ArcPy實(shí)現(xiàn)批量對大量遙感影像相減做差

    這篇文章主要為大家介紹了如何基于Python中ArcPy模塊實(shí)現(xiàn)對大量柵格遙感影像文件批量進(jìn)行相減做差,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2023-06-06
  • Python編程中實(shí)現(xiàn)迭代器的一些技巧小結(jié)

    Python編程中實(shí)現(xiàn)迭代器的一些技巧小結(jié)

    只談迭代器的話在Python中只是一個泛指的概念,具體的可以用yield、生成器表達(dá)式、iter等多種方式來構(gòu)建,這里我們整理了Python編程中實(shí)現(xiàn)迭代器的一些技巧小結(jié):
    2016-06-06
  • python讀取一個大于10G的txt文件的方法

    python讀取一個大于10G的txt文件的方法

    讀取文件是一個常用的功能,那么如何用python 讀取一個大于10G 的文件,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • python學(xué)習(xí)必備知識匯總

    python學(xué)習(xí)必備知識匯總

    這篇文章主要介紹了python學(xué)習(xí)必備知識匯總的相關(guān)資料,需要的朋友可以參考下
    2017-09-09
  • 詳解Python操作Excel之openpyxl

    詳解Python操作Excel之openpyxl

    這篇文章主要為大家介紹了Python操作Excel的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • python?DataFrame的shift()方法的使用

    python?DataFrame的shift()方法的使用

    在python數(shù)據(jù)分析中,可以使用shift()方法對DataFrame對象的數(shù)據(jù)進(jìn)行位置的前滯、后滯移動,本文主要介紹了python?DataFrame的shift()方法的使用,感興趣的可以了解一下
    2022-03-03
  • python解析基于xml格式的日志文件

    python解析基于xml格式的日志文件

    這篇文章主要為大家詳細(xì)介紹了python如何解析基于xml格式的日志文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02

最新評論

汨罗市| 闸北区| 韩城市| 锦屏县| 刚察县| 常宁市| 德钦县| 南漳县| 连州市| 从化市| 叶城县| 菏泽市| 黄冈市| 贡觉县| 新昌县| 左云县| 白玉县| 方城县| 温州市| 思茅市| 南阳市| 淮安市| 红原县| 长泰县| 庄河市| 武定县| 仙桃市| 汪清县| 永福县| 新巴尔虎左旗| 大英县| 千阳县| 理塘县| 上思县| 福海县| 远安县| 纳雍县| 深圳市| 阳谷县| 潞城市| 崇信县|