因为线下赛的需要,想将自己的一些博客给保存到本地,无疑Ctrl+S
是最为简单的操作,查阅了相关资料,PyUserInput
可以实现此功能~但是很烦的地方在安装时出现了很多问题,给的解释,大多是因为py3.5
的版本是X64
导致的~
查询了很多资料,终于找到了解决办法~
0X01、安装相关库(注意:我的是X64)
pyHook安装
链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/
pip install pyHook的本地路径
注意:路径为绝对路径,切记不要更改文件名称~
pywin32安装
pywin32-220
下载地址:https://sourceforge.net/projects/pywin32/files/pywin32/Build%20220/
下载双击直接运行安装
PyUserInput安装
pip install PyUserInput
之后就完成了
测试安装完成
__author__ = "GETF"
# -*-coding:utf-8-*-
from pymouse import PyMouse
m = PyMouse()
print(m.position())
#输出鼠标的位置
运行结果如下即无误:
0x02、PyUserInput操作
文档在这里:https://github.com/PyUserInput/PyUserInput
下面是个人阅读官方文档对其的一些操作翻译和理解(只测试了windows环境下,不当之处欢迎指出~):
创建对象
from pymouse import PyMouse
from pykeyboard import PyKeyboard
m = PyMouse()#创建鼠标对象
k = PyKeyboard()#创建键盘对象
这里有一个例子,点击屏幕的中心,输入“Hello,World!”
__author__ = "GETF"
# -*-coding:utf-8-*-
from pymouse import PyMouse
from pykeyboard import PyKeyboard
m = PyMouse()#创建鼠标对象
k = PyKeyboard()#创建键盘对象
x_dim, y_dim = m.screen_size()#获取屏幕的大小
m.click(int(x_dim/2), int(y_dim/2), 1)#前两个参数为坐标,最后一个参数代表点击次数
k.type_string('Hello, World!')#键盘输出文字
注意:click
的参数需要为int
型~
键盘的操作
# 按下去H键
k.press_key('H')
# 释放H键的按压
k.release_key('H')
# 点击e键
k.tap_key('e')
# 点击l两次,时间间隔为5s
k.tap_key('l',n=2,interval=5)
# 输出字符串
k.type_string('o World!')
#连续键alt+tab
k.press_key(k.alt_key)
k.tap_key(k.tab_key)
k.release_key(k.alt_key)
k.tap_key(k.function_keys[5]) # 点击f5
k.tap_key(k.numpad_keys['Home']) # 点击home键
k.tap_key(k.numpad_keys[5], n=3) # 点击f5,三次
k.press_keys([k.windows_l_key,'d']) #实现组合键