Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >从一个自动键控脚本运行另一个自动键控脚本?

从一个自动键控脚本运行另一个自动键控脚本?
EN

Stack Overflow用户
提问于 2020-12-04 18:38:03
回答 3查看 248关注 0票数 2

现在我有两个Autokey脚本(为了模块化),一个用来打开文件,另一个用来放入文本。

打开文件的脚本具有热键F1 (为简单起见,我们将其称为1 ),而将文本放入其中的脚本具有热键F2。我想要一个新的自动关键点脚本,当我点击F3时,它会同时运行1脚本和2脚本。

我已经尝试让3脚本只发送F1F2密钥,但计时完全不正确。如果我能从3调用12就更好了。这个是可能的吗?

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-12-04 20:26:23

https://github.com/autokey/autokey/blob/fc7c6b90f3f28a57ad256829ef2b69e3be5148d2/lib/autokey/scripting.py#L1242

engine.run_script("<description>")

应该做到这一点

此上下文中的“描述”通常是AutoKey界面中侧边栏中的脚本的名称。如果打开脚本的.json文件,您肯定会看到它,但它将是侧栏中显示的名称,除非您在同一文件夹或其他边缘方案中有重复的脚本名称

票数 4
EN

Stack Overflow用户

发布于 2020-12-05 05:59:19

AutoKey不是递归的。它不会检查AutoKey短语或脚本的输出以查找热键或触发器缩写,从而调用进一步的操作。这就是你最初的解决方案不起作用的原因。

这取决于你实际想要做什么。

如果你有多个独立有用的脚本,最好的方法是@Icallitvera提供的。

如果您只想模块化共享功能,您可以创建AutoKey函数模块,并将它们放在Python模块目录中。然后,可以将它们导入到任何需要它们的AutoKey脚本中。

您可以通过Settings->Configure AutoKey->Script Engine从AutoKey主菜单中查找/设置模块目录。

目前,这种方法是有限的,因为以这种方式调用的脚本(很容易)不能访问API,因此它们不能包含任何AutoKey调用。我们计划在下一个主要版本AutoKey 0.96中解决这个问题。如果你现在真的需要这样做,请在我们的support listGitter上询问。

票数 3
EN

Stack Overflow用户

发布于 2021-10-12 01:28:21

我遇到了同样的问题,我发现解决该限制的唯一方法是使用exec()函数。因为带有要共享的函数的脚本已经在AutoKey用户文件夹中了,所以我使用了它。因此,为了将我的用户模块"mygame“的共享函数加载到我使用的autokey脚本中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
exec(open(engine.configManager.userCodeDir + "/" + "mygame.py").read())

为了避免在“导入”多个脚本时出现名称冲突,以及给人一种更像模块的感觉,我将函数放在类中,并使用一个名为模块的变量进行实例化。

所以最后看起来是这样的:

mygame.py:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import time

class MyGame:
    def GameReload(self):
        self.GameExitNoSave()
        time.sleep(0.3)
        self.GameLoadCurrent()

    def GameExitNoSave(self):
        keyboard.send_key('d')
        time.sleep(0.1)
        keyboard.send_key('<up>')
        time.sleep(0.05)
        keyboard.send_key('<enter>')

    def GameLoadCurrent(self):
        keyboard.send_key('<down>')
        time.sleep(0.1)
        keyboard.send_key('<down>')
        time.sleep(0.1)
        keyboard.send_key('<enter>')
        time.sleep(0.5)
        keyboard.send_key('<enter>')
        
mygame = MyGame()   

AutoKey中的用户脚本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
exec(open(engine.configManager.userCodeDir + "/" + "mygame.py").read())

mygame.GameReload():
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65148965

复制
相关文章
开机自动运行python脚本
3、编辑/usr/lib/systemd/system/rc-local.service,添加如下内容
py3study
2020/01/07
2.9K0
自动登录脚本
脚本的作用不明而喻,在无数次的启动开发板过程中,不断登录确确实实占用了我大量的时间及精力; 于是上网根据自己的实际编写了一个脚本: 1 #!/usr/bin/expect -f 2 set user xxxx 3 set password xxxx 4 set timeout 5 5 spawn adb shell 6 expect "*login:*" 7 send "$user\r" 8 set timeout 5 9 expect "*assword:*" 10 send "
233333
2018/03/07
1.8K0
在AIX建立开机自动运行脚本
.        run-level 2 May 20 11:35      2    0    S
星哥玩云
2022/07/01
1.3K0
shell脚本实际运用_shell脚本调用另一个脚本
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/168438.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/22
9980
分享工作中常用的一个Git脚本前言一个自动化脚本运行结果脚本内容
在实际开发中,我们很频繁的需要从git远程仓库拉取master代码建立分支进行开发,开发完毕后,我们需要push到远程进行build、部署和测试,这里博主根据自己的情况,编写了一个git脚本,让我们只需要关心开发代码,至于开发代码前的git操作步骤自动化完成~(关于博主的另外一篇git的博客:《工程化专题之Git》)
用户2890438
2018/08/20
9100
自动同步2个目录python脚本
#!/usr/bin/python # -*- coding: utf8 -*- import os import sys import filecmp import re import shutil file_list = [] def recursive_dir(dir1):     """     递归当前目录的文件和子目录     :param dir1: 传参 需要递归的目录     :return: 当前目录下所有文件和目录     """     curDir = os.path.absp
py3study
2020/01/15
1.3K0
自动登录expect脚本
vim 1.exp #! /usr/bin/expect set host "192.168.6.77" set passwd "12341234" spawn ssh root@$host expect { "yes/no" { send "yes\r"; exp_continue} "assword:" { send "$passwd\r" } } interact 添加权限 chmod +x 1.exp 执行 [root@node06 ~]# ./1.exp spawn ssh root@19
零月
2018/04/25
2.1K0
MySQL自动备份脚本
#!/bin/bash #by azura #About database backup #URL https://www.mxsina.com DBCMD=/usr/local/mysql/bin/mysqldump #请修改为数据库dump命令目录 DBUSER=root DBPWD=123456789 #数字段请修改为root用户数据库连接密码 DATABASE=emlogdb #emlogdb请修改为备份的数据库 BA
Azura
2018/08/07
2.5K0
MySQL自动备份脚本
自动重启docker脚本
结合定时任务可每十分钟检索运行的docker容器,如果存在挂掉的容器则全部停止,并按顺序重启容器
summerking
2022/09/19
2K0
京东活动+自动运行脚本+签到2021.05.26更新
先下载Node.js运行环境 https://nodejs.org/en下载14.16.1版本。 WIN7下载12.20的版本 https://nodejs.org/dist/latest-v12.x/node-v12.20.1-x64.msi。 只需要一路安装就可以。 检测是否安装成功:点击开始-运行-cmd(win+R),打开dos,输入“node –version”检查Node.js版本:只要有显示就说明没问题了。
全栈程序员站长
2022/09/15
1.8K0
IIS自动发布脚本
这里设置的是一个空站点,可以自己设置文件路径;这里的路径是 $physicalPath 变量的值。
Vincent-yuan
2020/11/12
1.6K0
IIS自动发布脚本
python 自动登录 脚本
import tesserocr from PIL import Image from selenium import webdriver import time import sys import datetime import os import csv import re from win32com.client import Dispatch, DispatchEx import pythoncom from PIL import ImageGrab, Image import uuid import configparser
用户5760343
2022/05/13
1.2K0
mongodb自动备份脚本
(adsbygoogle = window.adsbygoogle || []).push({});
拓荒者
2019/07/03
1.5K0
ELK自动安装脚本
ELK由Elasticsearch、Logstash和Kibana三部分组件组成;
KaliArch
2018/04/19
1.8K1
ELK自动安装脚本
自动部署项目脚本
#!/bin/sh # 进入到项目目录 cd /root/LawFirm/production # 停掉服务 uwsgi --stop LawFirm_20180326/uwsgi.pid # 将之前的项目重新命名 并且移动到bak中备份 # mv LawFirm_20180326 bak/ # mv LawFirm_20180326.zip bak/ # 修改之前的项目文件名 datename=$(date +%Y%m%d-%H%M%S) mv LawFirm_20180326 $datename
人生不如戏
2020/07/21
4430
xtrabackup自动备份脚本
#backup.sh #!/bin/sh #on xtrabackup 2.2.8 # 第一次执行它的时候它会检查是否有完全备份,否则先创建一个全库备份 # 当你再次运行它的时候,它会根据脚本中的设定来基于之前的全备或增量备份进行增量备份 #ocpyang@126.com INNOBACKUPEX_PATH=innobackupex #INNOBACKUPEX的命令 INNOBACKUPEXFULL=/usr/local/xtrabackup/bin/$INNOBACKUPEX
用户1503405
2021/10/31
1.4K0
自动重启应用脚本
# 1.脚本介绍 脚本用到lsof命令注意yum一下 yum install -y lsof 结合定时任务可每分钟检索运行的nginx,elasticsearch,redis,mysql;如果应用挂掉则尝试重启 # 2.Autorestart.sh #!/bin/bash #log文件 MonitorLog=/home/summer/autostart.log user=summer #检测nginx80端口 curtime=$(date "+%Y-%m-%d %H:%M:%S") checkNgi
summerking
2022/09/19
1.3K0
多磁盘自动分区自动挂载脚本
准备测试tfs分布式存储,发现一台服务器24块大盘,还有好几台服务器, 想想那么碰分区格式化,UUID自动挂载,还好有自动脚本。
三杯水Plus
2018/11/14
1.8K0
ssh脚本自动登录怎么回事_自动注册账号app脚本
这是首次登录时使用,如果已经获取到了指纹,那么需要把前面两行expect和send注释掉
全栈程序员站长
2022/11/16
6670
嵌入式Linux系统脚本小技巧之U盘自动运行脚本
上次介绍了一个系统启动预留脚本,今天介绍的这个脚本小技巧是U盘自动运行脚本,这个脚本相当于系统的一个功能扩展接口,可以实现好多扩展功能!
fensnote
2022/01/18
1.7K0

相似问题

使用输入参数运行自动键控脚本

10

用自动热键控制鼠标

12

自动热键控制+卡锁问题

12

全局键控/键控检测

22

自动连接所有按类型键控的接口

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文