1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > c++如何实现对硬盘的操作_如何使用Python实现自动化点击鼠标和操作键盘?

c++如何实现对硬盘的操作_如何使用Python实现自动化点击鼠标和操作键盘?

时间:2019-09-01 22:17:01

相关推荐

c++如何实现对硬盘的操作_如何使用Python实现自动化点击鼠标和操作键盘?

python中的库可以模拟鼠标点击和键盘输入的动作。所以我们需要告诉程序在哪里点击,单机还是双击,点右键还是左键,在哪里输入,输入什么……

基本操作流程如下:

1.搭建python运行环境Anaconda,安装pyautogui库

2.安装visual code 用来编写代码

3.填写专属的position.txt命令文档

4.编写自动化操作代码并运行

1 搭建Python运行环境

根据自己的系统和多少位操作系统,选择安装包。

安装好之后,再安装pyautogui,这个库可用来模拟鼠标和键盘操作。

链接:

/s/19CCBSdt7qMv2R0HpFDg6qg

提取码:

6666

打开Anaconda Powershell Prompt输入以下命令:

cd setup.py所在路径

python setup.py install

2 安装编写python代码的编辑器vscode

点击下载vscode……

常用快捷键:

打开一个新的Tab页Ctrl+N

打开一个新的窗口Ctrl+Shift+N

关闭当前(光标所在)Tab页Ctrl+W

关闭当前窗口Ctrl+Shift+W

在一个编辑器中切处一个新的编辑器(最多三个)Ctrl+\

代码行缩进Ctrl+[Ctrl+]

折叠打开代码块Ctrl+Shift+[Ctrl+Shift+]

Ctrl+CCtrl+V如果不选中,默认复制或剪切一整行

运行Ctrl + F5

调试运行F5

3记录个人操作流程

以“打开excel,输入文字,保存,然后关闭”这套流程为例。

整套操作流程总结为以下几点:

完整记录上述操作的每一步,每一步鼠标所在位置和操作类型(单击双击或者输入文字等)

鼠标移动到你要点击的位置

记录位置坐标和操作情况到position.txt

txt中记录内容如下:

关闭文档 4 1880 19 1 Click为例解释如下:

关闭文档为操作名

4位操作序号

1880 19为鼠标位置

1设置的延时,时间为s

Click鼠标操作类型

实时显示鼠标代码如下:

importosdefGetPositon(): try: while True: currentMouseX, currentMouseY = pag.position() print(currentMouseX, currentMouseY) os.system('cls') # 执行系统清屏指令 except KeyboardInterrupt: print("end") if__name__=="__main__": GetPositon()

这一步操作略显笨拙,不够自动化,当然这一步可以做得更好,更加便捷。

4编码实现自动化操作

下面这段代码,逐行执行position.txt中的指令。代码逻辑如下:

将position.txt中的指令读入posList列表中

遍历列表posList,逐步操作

importpyautoguiaspagimport timeclass ExcuteFlow(): def__init__(self): posList = [] with open("position.txt",encoding='utf-8', mode = "r") as fea: for feature in fea.readlines():posDic = {}feature = feature.strip('\n')words = feature.split(" ")posDic['operate'] = words[0]posDic['x'] = int(words[2])posDic['y'] = int(words[3])posDic['delay'] = int(words[4])posDic['name'] = words[5]posList.append(posDic) self.posList = posListself.Excute() def Excute(self):for pos in self.posList: print(f"excute {pos['operate']}") if pos['name'] == "Click":pag.click(pos["x"], pos["y"]) elif pos['name'] == "DoubleClick":pag.doubleClick(pos["x"], pos["y"]) else:pag.click(pos["x"], pos["y"])pag.typewrite(pos["name"]) time.sleep(pos['delay']) if __name__ == "__main__": excute=ExcuteFlow()

使用python帮你自动点点点,并不复杂。

看懂这一篇教程之后,你当然可以设置更复杂的操作。

核心不在于代码,而在于如何细致分解你的操作流程,就是制作好你的position.txt文件。

同时延时还需要根据你的实际情况设置好。

效果展示

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。