zoukankan      html  css  js  c++  java
  • Python实现快捷输入(类似WeGame的一键喊话)

    故事背景:

      表弟跟我说,他玩游戏玩的不是很好,导致经常被队友互动,但是自己的手速有限,经常在互动中败阵。

      因此,尝试做一款小工具,帮助表弟取得和队友互动的胜利!

    逻辑设计:

      监听键盘上的某个按键

      当该按键被按下时,调用数据库(或者远程接口)的数据

      将获取到的数据写进Windows的剪贴板

      模拟粘贴快捷键(Ctrl + V),将数据文本直接粘贴到光标位置(比如聊天框)

    直接上程序

    from pynput.keyboard import Listener,Key, Controller
    # import logging
    import win32clipboard as w
    # import win32con
    import time
    import requests
    
    # wenjianweizhi = "D:\hi\"
    
    # logging.basicConfig(filename=(wenjianweizhi + "keylogger.txt"), format="%(asctime)s:%(message)s", level=logging.DEBUG)
    
    def download_page(url):
       headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"}
       r = requests.get(url, headers=headers)  # 增加headers, 模拟浏览器
       return r.text.replace('<br />','')+"
     
    "
    
    # def getClipboard():#读取剪切板
    #     w.OpenClipboard()
    #     d = w.GetClipboardData(win32con.CF_TEXT)
    #     w.CloseClipboard()
    #     return d
    def setClipboard(aString):#写入剪切板
        w.OpenClipboard()
        w.EmptyClipboard()
        w.SetClipboardText(aString)
        w.CloseClipboard()
    
    def press(key):
        try :
            print(key.char)
            if key.char == '-' :
                print('进来了  --  ')
                url = 'https://nmsl.shadiao.app/api.php?level=min&lang=zh_cn'
                html = download_page(url)
    
                # 在这里调接口,将数据写进剪贴板,然后模拟键盘的粘贴(Ctrl + V)
                setClipboard(str(html))
                keyboard = Controller()
                keyboard.press(Key.ctrl)
                keyboard.press('v')
                # 延时10毫秒
                time.sleep(0.01)
                keyboard.release(Key.ctrl)
                keyboard.release('v')
    
    
        except Exception as e:
            print("已调到该程序,但是引用报错", e)
    
    
    
    
    with Listener(on_press=press) as listener:
        listener.join()

    使用方法

      运行该py程序,然后找一个可以打字的地方,按下键盘上的减号(-)

      等待半秒钟左右,这时候你会神奇的发现,光标后边自动出来了一句话

      下面贴图展示运行后,我按了十几次减号的结果

      

    鸣谢

      

    nmsl.shadiao.app 网站作者

  • 相关阅读:
    Vim自动补全神器YouCompleteMe的配置
    sudo apt-get update 时出现的hit、ign、get的含义
    C语言可变参数宏及‘##’在可变参数中的作用
    搬书游戏
    程序中数字取反结果公式
    利用宏定义中的##实现函数模板的作用
    C中的空宏定义,即只有一个参数
    浏览器缓存技术介绍
    Vue相关原理以及手写一个MyVue
    详解JS中的prototype、__proto__与constructor(图解)
  • 原文地址:https://www.cnblogs.com/luxd/p/12777677.html
Copyright © 2011-2022 走看看