- 硕士
- 3711900
- 450
- 43
- 795 朵
- 946 个
- 1035 个
- 16720
- 2016-01-18
|
1#
t
t
发表于 2016-04-03 03:59
|
|
gk.find/rpa 果壳万能插件v3.23  - 您所在的用户组无法下载或查看附件
rpa入门三步曲(教学视频)→ 果壳插件开发宗旨:本插件旨在将按键官方所有图色文字命令集成为一个统一的插件命令(gk.find),易学易懂,傻瓜式调用,实现图色参数可变可选(官方图色命令参数是固定的),和查找到图色对象后自带点击的功能,以及体现各种找图、找色、找字技巧的插件扩展命令(扩展命令函数原型说明请见文章后半部分)。本插件可根据您输入的不同的图色参数数据来自动匹配应该调用哪一种图色功能(此实现有点像c 的函数重载)。插件图色功能部分主要包含两个实现方法,一个是常用的find方法,另一个是它的增强版find2方法,后者可实现返回一个数组变量,该变量返回了查找对象坐标信息,可通过访问数组下标的方式对其进行索引(详情请见代码示例)。 重头戏是果壳插件rpa功能:实现对界面元素的遍历查找、取值与“精神控制”(开玩乐,其实只是对元素的肉体控制),总之很黄很暴,完美体现果壳式暴力美学。果壳插件rpa函数原型说明与代码示例请见文章末尾! |
 - 您所在的用户组无法下载或查看附件
【果壳热@按键学园qq群:①群(547563540) ②群(465560580) ③群(714719015)】 果壳插件v3.18 更新内容: 1.新增文字识别命令 2.新增横竖屏图色识别3.新增随机点击图色对象 果壳插件v3.19 更新内容: 1.新增对果壳点击命令实现偏移点击的可选参数2.新增横竖屏转换对果壳点击命令的兼容3.优先插件说明文件 果壳插件v3.22 更新内容: 1.修复findubex、findubtm和findubtmex命令的bug 2.修复findwordubex、findwordubtm和findwordubtmex命令的bug 3.修复findubex2、findubtm2和findubtmex2命令的bug 4.修复findwordubex2、findwordubtm2和findwordubtmex2命令的bug5.修复findex2命令的返回值bug6.新增实现findex2、findtm2命令和findtmex2命令,找图返回第4个参数,表示第几张图片的id(从0开始索引)
新果壳插件(万能图色文字 rpa办公自动化)更新至v3.231.新增 gk.rpa [果壳式rpa暴力综合命令]2.新增 gk.rpa_lookup [果壳式rpa元素匹配]3.新增 gk.rpa_track [果壳式rpa元素追踪] 4.新增 gk.rpa_check [果壳式过滤检查数据]5.新增 gk.rpa_find 遍历查找指定元素属性 6.新增 gk.rpa_getall 获取当前界面所有元素属性 7.新增 gk.rpa_getfull 获取当前界面层级元素属性 8.新增 gk.rpa_gettext 获取当前界面所有元素标题 9.新增 gk.rpa_click 点击元素对象中心 插件使用方法:1.下载插件后请将gk.luae和gk.info这两个文件丢进按键精灵手机助手目录下的plugin文件夹中。 2.调用插件时必须先在脚本开头用import命令导入插件:import "gk.luae"。3.请升级按键手机助手3.50版本,以获得支持(注:手机助手3.50版本已集成果壳插件)【果壳万能插件 - 最新版本号:v3.23 - 更新日期:2020/3/28】 (欲获得更详细的答疑服务,请加群入我们的qq群)
[果壳插件v3.23] 万能图色文字 rpa自动化办公 免费下载,永久使用 - 您所在的用户组无法下载或查看附件
| 彩蛋(图色文字命令目录) - 您所在的用户组无法下载或查看附件
果壳万能插件图色基本命令函数原型说明:一. 比色 集成官方cmpcolorex命令 - 插件函数原型:gk.find(color[, sim][, click]) 函数作用:多个坐标点比对对应颜色序列 参数 | 描述 | color
| 必选。字符串型,颜色字符序列 | sim | 可选。浮点型,颜色查找相似度,取值范围0.1-0.999,不填此参数则默认为0.9 注意:由于相似度设置为1是无效的(sim参数不支持整数),因此如想获得类似1的效果,请将相似度设置为0.999 | click | 可选。布尔值,指明图色判断成立后是否需要执行点击操作,true表示执行点击,false表示不点击,不填此参数则默认为true |
插件命令判断成立/不成立返回值说明 | 返回值(布尔型)
| 判断成立:对比颜色序列全匹配 | true | 判断不成立:对比颜色序列并非完全匹配 | false |
插件调用实例- import "gk.luae"
- if gk.find("378|583|0fba06,373|611|292edf,343|609|da9d08") then
- traceprint "click"
- end if
- if gk.find("378|583|0fba06,373|611|292edf,343|609|da9d08",false) then
- traceprint "true"
- end if
- dim a={"378|583|0fba06,373|611|292edf,343|609|da9d08",false}
- traceprint gk.find(a)
复制代码 二. 比色2集成官方cmpcolorex命令 - 插件函数原型(增强版):gk.find2(color[, sim][, click])函数作用:多个坐标点比对对应颜色序列注:参数描述同上(比色) 插件命令判断成立/不成立返回值说明 | 返回值(数组型) | 判断成立说明1:成功匹配指定颜色对象
| true。由数组成员array(0)接收该返回值
| 判断成立说明2:成功匹配指定颜色对象 | 颜色对象x坐标值。由数组成员array(1)接收该返回值
| 判断成立说明3:成功匹配指定颜色对象
| 颜色对象y坐标值。由数组成员array(2)接收该返回值
| 判断不成立说明1:未匹配到指定颜色对象
| false。由数组成员array(0)接收该返回值 | 判断不成立说明2:未匹配到指定颜色对象
| -1。由数组成员array(1)接收该返回值
| 判断不成立说明3:未匹配到指定颜色对象
| -1。由数组成员array(2)接收该返回值
|
插件调用实例- import "gk.luae"
- dim a=gk.find2("378|583|0fba06,373|611|292edf,343|609|da9d08")
- traceprint a(0),a(1),a(2)
- dim b={"378|583|0fba06,373|611|292edf,343|609|da9d08",false}
- dim arr=gk.find2(b)
- traceprint arr(0),arr(1),arr(2)
- dim arr_=gk.find2({"378|583|0fba06,373|611|292edf,343|609|da9d08",false})
- traceprint arr_(0),arr_(1),arr_(2)
复制代码 三. 找色 集成官方findmulticolor命令 - 插件函数原型:gk.find([x1, y1, x2, y2, ]color, offset[, dir][, sim][, click]) 函数作用:在一定范围内查找匹配指定颜色序列 参数
| 描述
| x1 y1 x2 y2
| 可选。整数型,分别用4个整型参数(x1,y1,x2,y2)表示查找颜色对象的坐标范围。如果参数x1、y1、x2、y2皆未填写则表示采用全屏查找 | color
| 必选。字符串型,欲搜索对象的颜色字符序列。
| offset
| 必选。字符串型,与要搜索的颜色对象进行坐标偏移比对的颜色字符序列。
| dir | 可选。整数型,查找方向,如不填写则默认查找方向为0(具体参数值请见按键官方命令说明)。注:dir参数位置顺序可与sim参数位置顺序相互置换 | sim
| 可选。浮点型,颜色查找相似度,取值范围0.1-0.999,不填此参数则默认为0.9。注:sim的参数位置顺序可与dir的参数位置顺序相互置换 注意:由于相似度设置为1是无效的(sim参数不支持整数),因此如想获得类似1的效果,请将相似度设置为0.999 | click
| 可选。布尔值,指明图色判断成立后是否需要执行点击操作,true表示执行点击,false表示不点击,不填此参数则默认为true |
插件命令判断成立/不成立返回值说明
| 返回值(布尔型) | 判断成立:成功匹配指定颜色对象 | true | 判断不成立:未匹配到指定颜色对象 | false |
插件调用实例- import "gk.luae"
- if gk.find(311,489,409,580,"0fba06","-5|28|292edf,-35|26|da9d08") then
- traceprint "click"
- end if
- dim a={"0fba06","-5|28|292edf,-35|26|da9d08",0.8,false}
- traceprint gk.find(a)
- traceprint gk.find({"0fba06","-5|28|292edf,-35|26|da9d08",0.8,false})
复制代码 四. 找色2集成官方findmulticolor命令 - 插件函数原型(增强版):gk.find2([x1, y1, x2, y2, ]color, offset[, dir][, sim][, click])函数作用:在一定范围内查找匹配指定颜色序列注:参数描述同上(找色) 插件命令判断成立/不成立返回值说明 | 返回值(数组型) | 判断成立说明1:成功匹配指定颜色对象
| true。由数组成员array(0)接收该返回值
| 判断成立说明2:成功匹配指定颜色对象 | 颜色对象x坐标值。由数组成员array(1)接收该返回值
| 判断成立说明3:成功匹配指定颜色对象
| 颜色对象y坐标值。由数组成员array(2)接收该返回值
| 判断不成立说明1:未匹配到指定颜色对象
| false。由数组成员array(0)接收该返回值 | 判断不成立说明2:未匹配到指定颜色对象
| -1。由数组成员array(1)接收该返回值
| 判断不成立说明3:未匹配到指定颜色对象
| -1。由数组成员array(2)接收该返回值
|
插件调用实例- import "gk.luae"
- dim a=gk.find2(311,489,409,580,"0fba06","-5|28|292edf,-35|26|da9d08")
- traceprint a(0),a(1),a(2)
- dim b={"0fba06","-5|28|292edf,-35|26|da9d08",false}
- dim arr=gk.find2(b)
- traceprint arr(0),arr(1),arr(2)
- dim arr_=gk.find2({"0fba06","-5|28|292edf,-35|26|da9d08",false})
- traceprint arr_(0),arr_(1),arr_(2)
复制代码 五. 找图 集成官方findpic命令 - 插件函数原型:gk.find([x1, y1, x2, y2, ]picture[, delta][, dir][, sim][, click])函数作用:在一定范围内查找指定图片 参数 | 描述 | x1 y1 x2 y2 | 可选。整数型,分别用4个整型参数(x1,y1,x2,y2)表示查找图片对象的坐标范围。如果参数x1、y1、x2、y2皆未填写则表示采用全屏查找 | picture | 必选。字符串型,图片名字(填写格式见下例)。支持查找多张图片(详情见官方命令说明) | delta | 可选。字符串型,找图偏色值,如不填写该参数则默认为"000000" | dir | 可选。整数型,查找方向,如不填写则默认查找方向为0(具体参数值请见按键官方命令说明)。注dir的参数位置顺序可与sim参数位置顺序相互置换 | sim | 可选。浮点型,找图相似度,取值范围0.1-0.999,不填此参数则默认为0.9。注:sim的参数位置顺序可与dir参数位置顺序相互置换 注意:由于相似度设置为1是无效的(sim参数不支持整数),因此如想获得类似1的效果,请将相似度设置为0.999 | click | 可选。布尔值,指明图色判断成立后是否需要执行点击操作,true表示执行点击,false表示不点击,不填此参数则默认为true |
插件命令判断成立/不成立返回值说明
| 返回值(布尔型) | 判断成立:成功查找到对应图片 | true | 判断不成立:未查找到对应图片
| false |
插件调用实例- import "gk.luae"
- if gk.find("attachment:图片.png") then
- traceprint "click"
- end if
- if gk.find(311,489,409,580,"attachment:图片.png",false) then
- traceprint "true"
- end if
- dim a={"attachment:图片1.png|attachment:图片2.png","303030",1,0.8}
- traceprint gk.find(a)
复制代码 六. 找图2 集成官方findpic命令 - 插件函数原型(增强版):gk.find2([x1, y1, x2, y2, ]picture[, delta][, dir][, sim][, click])函数作用:在一定范围内查找指定图片注:参数描述同上(找图) 插件命令判断成立/不成立返回值说明
| 返回值(数组型) | 判断成立说明1:成功查找到对应图片
| true。由数组成员array(0)接收该返回值 | 判断成立说明2:成功查找到对应图片
| 图片x坐标值。由数组成员array(1)接收该返回值
| 判断成立说明3:成功查找到对应图片
| 图片y坐标值。由数组成员array(2)接收该返回值
| 判断成立说明4:成功查找到对应图片 | 图片序号(从0开始索引)。由数组成员array(3)接收该返回值 |
判断不成立说明1:未查找到对应图片
| false。由数组成员array(0)接收该返回值
| 判断不成立说明2:未查找到对应图片
| -1。由数组成员array(1)接收该返回值
| 判断不成立说明3:未查找到对应图片 | -1。由数组成员array(2)接收该返回值
|
判断不成立说明4:未查找到对应图片 | -1。由数组成员array(3)接收该返回值 | 插件调用实例- import "gk.luae"
- dim a=gk.find2(311,489,409,580,"attachment:图片.png")
- traceprint a(0),a(1),a(2),arr(3)
- dim b={"attachment:图片1.png|attachment:图片2.png"}
- dim arr=gk.find2(b)
- traceprint arr(0),arr(1),arr(2),arr(3)
- dim arr_=gk.find2({"attachment:图片1.png|attachment:图片2.png"})
- traceprint arr_(0),arr_(1),arr_(2),arr_(3)
复制代码 七. 找色素 集成官方findcolor命令 - 插件函数原型:gk.find([x1, y1, x2, y2, ]color[, dir][, sim][, click])函数作用:在一定范围内查找指定颜色值 参数 | 描述
| x1 y1 x2 y2 | 可选。整数型,分别用4个整型参数(x1,y1,x2,y2)表示查找颜色对象的坐标范围。如果参数x1、y1、x2、y2皆未填写则表示采用全屏查找 | color
| 必选。字符串型,欲查找的颜色字符序列(支持查找多个颜色对象,详情见官方命令说明)
| dir
| 可选。整数型,查找方向,如不填写则默认查找方向为0(具体参数值请见按键官方命令说明)。注:dir的参数位置顺序可与sim参数位置顺序相互置换 | sim
| 可选。浮点型,颜色查找相似度,取值范围0.1-0.999,不填此参数则默认为0.9。注:sim的参数位置顺序可与dir的参数位置顺序相互置换 注意:由于相似度设置为1是无效的(sim参数不支持整数),因此如想获得类似1的效果,请将相似度设置为0.999 | click
| 可选。布尔值,指明图色判断成立后是否需要执行点击操作,true表示执行点击,false表示不点击,不填此参数则默认为true |
插件命令判断成立/不成立返回值说明
| 返回值(布尔型) | 判断成立:成功查找到指定颜色对象 | true | 判断不成立:未查找到指定颜色对象 | false |
插件调用实例- import "gk.luae"
- if gk.find(311,489,409,580,"0fba06",0.999) then
- traceprint "click"
- end if
- dim a={"0fba06|845c1b",0.999,false}
- traceprint gk.find(a)
- traceprint gk.find({"0fba06|845c1b",0.999,false})
复制代码 八. 找色素2 集成官方findcolor命令 - 插件函数原型(增强版):gk.find2([x1, y1, x2, y2, ]color[, dir][, sim][, click])函数作用:在一定范围内查找指定颜色值注:参数描述同上(找色素) 插件命令判断成立/不成立返回值说明 | 返回值(数组型) | 判断成立说明1:成功查找到对应的颜色对象
| 颜色对象的序号(从0开始索引)。由数组成员array(0)接收该返回值 | 判断成立说明2:成功查找到对应的颜色对象
| 颜色对象x坐标值。由数组成员array(1)接收该返回值
| 判断成立说明3:成功查找到对应的颜色对象
| 颜色对象y坐标值。由数组成员array(2)接收该返回值
| 判断不成立说明1:未查找到对应的颜色对象 | -1。由数组成员array(0)接收该返回值
| 判断不成立说明2:未查找到对应的颜色对象
| -1。由数组成员array(1)接收该返回值
| 判断不成立说明3:未查找到对应的颜色对象
| -1。由数组成员array(2)接收该返回值
|
插件调用实例- import "gk.luae"
- dim a=gk.find2(311,489,409,580,"0fba06|292edf|da9d08",0.999)
- traceprint a(0),a(1),a(2)
- dim b={"0fba06|292edf|da9d08",0.999,2,false}
- dim arr=gk.find2(b)
- traceprint arr(0),arr(1),arr(2)
- dim arr_=gk.find2({"0fba06|292edf|da9d08",0.999,2,false})
- traceprint arr_(0),arr_(1),arr_(2)
复制代码 九. 对比色素 集成官方cmpcolor命令 - 插件函数原型:gk.find(x1, y1, color[, sim][, click])函数作用:在指定坐标处比对指定颜色值
参数
| 描述
| x1
| 必选。整数型,x坐标
| y1 | 必选。整数型,y坐标
| color
| 必选。字符串型,欲查找的颜色字符序列
| sim
| 可选。浮点型,颜色查找相似度,取值范围0.1-0.999,不填此参数则默认为0.9, 注意:由于相似度设置为1是无效的(sim参数不支持整数),因此如想获得类似1的效果,请将相似度设置为0.999 | click
| 可选。布尔值,指明图色判断成立后是否需要执行点击操作,true表示执行点击,false表示不点击,不填此参数则默认为true |
插件命令判断成立/不成立返回值说明 | 返回值(布尔型) | 判断成立:成功找到指定颜色值 | true | 判断不成立:未能找到指定颜色值 | false | 插件调用实例- import "gk.luae"
- if gk.find(378,583,"0fba06",0.999) then
- traceprint "true"
- end if
- dim a={378,583,"0fba06|845c1b",0.999}
- traceprint gk.find(a)
- traceprint gk.find({378,583,"0fba06|845c1b",0.999})
复制代码 十. 对比色素2 集成官方cmpcolor命令 - 插件函数原型(增强版):gk.find2(x1, y1, color[, sim][, click])函数作用:在指定坐标处比对指定颜色值注:参数描述同上(对比色素) 插件命令判断成立/不成立返回值说明 | 返回值(整数型) | 判断成立:成功找到指定颜色值 | 颜色对象序号(从0索引) | 判断不成立:未能找到指定颜色值 | -1 |
插件调用实例- import "gk.luae"
- dim a=gk.find2(378,583,"0fba06",0.999)
- traceprint a
- dim b={378,583,"0fba06|845c1b",0.999}
- traceprint gk.find2(b)
- traceprint gk.find2({378,583,"0fba06|845c1b",0.999})
复制代码 十一. 取色 集成官方getpixelcolor命令 - 插件函数原型:gk.find(x1, y1)函数作用:在指定坐标处获取颜色值
参数 | 描述 | x1
| 必选。整数型,x坐标
| y1 | 必选。整数型,y坐标
|
插件命令判断成立/不成立返回值说明 | 返回值(字符型) | 判断成立:在指定坐标处取得对应颜色值 | 16进制颜色值 |
插件调用实例- import "gk.luae"
- traceprint gk.find(378,583)
- dim a={378,583}
- traceprint gk.find(a)
- traceprint gk.find({378,583})
复制代码
【果壳万能插件图色扩展命令函数原型说明】 扩展命令 |
函数作用
|
函数原型/调用例子
|
findub、findub2
|
遍历对象,即查找对象以数组方式进行遍历查找,找到其中一个数组成员则返回真,返回假的条件:所有数组成员都未能找到。
| 函数原型: gk.findub(data[, click]) gk.findub2(data[, click])
参数描述: data 数组型(必选参数):图色数据,gk.find命令支持的所有图色数据 click 布尔型(可选参数):是否点击,找到对象后是否执行点击操作 注:不填click参数默认值为true
返回值: findub 返回布尔值 findub2 返回数组变量
数组变量(0)=布尔值(表示是否找到对象) 数组变量(1)=整数型(表示对象intx坐标) 数组变量(2)=整数型(表示对象inty坐标) 调用实例:
dim a() a(0)={"221|461|ffffff,237|454|27ba00,210|444|2cceeb,197|477|d49a00"} a(1)={174,418,265,513,"2f3bed","-4|-8|d2e6fe,18|-32|1b1f32"} traceprint gk.findub(a,false)
dim arr=gk.findub2(a) traceprint arr(0),arr(1),arr(2)
【注意】:本扩展命令必须先通过数组或表的形式来打包data数据 |
findtm、findtm2
|
等待对象出现,即在指定时间内查找对象(等待对象出现),找到返回真。返回假的条件:查找超时。
| 函数原型: gk.findtm(data[, tm]) gk.findtm2(data[, tm]) 参数描述: data 数组型/非数组型(必选参数):图色数据,gk.find命令支持的所有图色数据 tm 整数型(可选参数):等待出现时间(单位:秒),等待对象出现的时间上限 注:不填tm参数默认值为5 返回值: findtm 返回布尔值 findtm2 返回数组变量
数组变量(0)=布尔值(表示是否找到对象) 数组变量(1)=整数型(表示对象intx坐标) 数组变量(2)=整数型(表示对象inty坐标) 数组变量(3)=整数型(返回找图对象的图片id) 调用实例:
[例1] traceprint gk.findtm({527,702,674,834,"attachment:截图1.png",true},10)
[例2] dim a={"attachment:长安城.png|attachment:长寿村.png ",false} traceprint gk.findtm(a)
dim arr=gk.findtm2(a,10) traceprint arr(0),arr(1),arr(2)
[例3] dim a={"attachment:截图2.png|attachment:截图1.png"} dim arr=gk.findtm2(a) traceprint arr(0),arr(1),arr(2),arr(3)
[例4] dim t={527,702,674,834,"attachment:截图1.png",true} dim arr= gk.findtm2(t,10) traceprint arr(0),arr(1),arr(2),arr(3)
[例5] dim arr= gk.findtm2({527,702,674,834,"attachment:截图1.png"},3) traceprint arr(0),arr(1),arr(2),arr(3)
【注意】: 1.本扩展命令理论上需要先通过数组或表的形式来打包data数据 2.不填tm参数时,data数据可以为非数组型,否则必须为数组型或表。 |
findex、findex2
|
直到对象消失,即先判断找到对象并点击对象,然后在限定时间内检测对象已消失,返回真。返回假的条件:1.首次查找对象未找到;2.找到对象后等待对象消失时间超时。
| 函数原型: gk.findex(data[, tm]) gk.findex2(data[, tm]) 参数描述: data 数组型/非数组型(必选参数):图色数据,gk.find命令支持的所有图色数据 tm 整数型(可选参数):等待消失时间(单位:秒),等待对象消失的时间上限 注:不填tm参数默认值为5 返回值: findex 返回布尔值 findex2 返回数组变量
数组变量(0)=布尔值(表示是否找到对象) 数组变量(1)=整数型(表示对象intx坐标) 数组变量(2)=整数型(表示对象inty坐标) 数组变量(3)=整数型(返回找图对象的图片id) 调用实例:
[例1] traceprint gk.findex({605,426,683,504,"1e1ee9","5|15|ffffff,16|-17|000000"},10)
[例2]
dim a={605,426,683,504,"1e1ee9","5|15|ffffff,16|-17|000000"} traceprint gk.findex(a,10) dim arr=gk.findex2(a,10) traceprint arr(0),arr(1),arr(2)
[例3] dim a={"attachment:截图2.png|attachment:截图1.png"} dim arr=gk.findex2(a)
traceprint arr(0),arr(1),arr(2),arr(3)
[例4] dim t={527,702,674,834,"attachment:截图1.png",true} dim arr= gk.findex2(t,10)
traceprint arr(0),arr(1),arr(2),arr(3)
[例5] dim arr= gk.findex2({527,702,674,834,"attachment:截图1.png"},3)
traceprint arr(0),arr(1),arr(2),arr(3)
【注意】: 1.本扩展命令理论上需要先通过数组或表的形式来打包data数据 2.不填tm参数时,data数据可以为非数组型,否则必须为数组型或表。 |
findubtm、findubtm2 |
遍历对象 等待对象出现,即以遍历数组成员方式在指定时间内查找对象(等待对象出现),找到返回真。返回假的条件:查找超时。
| 函数原型: gk.findubtm(data[, tm[, click]]) gk.findubtm2(data[, tm[, click]]) 参数描述: data 数组型(必选参数):图色数据,gk.find命令支持的所有图色数据 tm 整数型(可选参数):等待出现时间(单位:秒),等待对象出现的时间上限 click 布尔型(可选参数):是否点击,找到对象后是否执行点击操作 注:不填tm参数默认值为5;设tm为空字符则转换为5;不填click参数默认值为true
返回值: findubtm 返回布尔值 findubtm2 返回数组变量
数组变量(0)=布尔值(表示是否找到对象) 数组变量(1)=整数型(表示对象intx坐标) 数组变量(2)=整数型(表示对象inty坐标) 调用实例:
dim a() a(0)={"219|463|ffffff,240|450|43c107,218|488|2d2fdf,207|482|d89b08"} a(1)={"88|659|4ae4fe,80|604|204efe,88|614|e8f1fd"} traceprint gk.findubtm(a,10) dim arr=gk.findubtm2(a,"",false) traceprint arr(0),arr(1),arr(2)
【注意】:本扩展命令必须先通过数组或表的形式来打包data数据 |
findubex、findubex2
|
遍历对象 直到对象消失,即先判断找到对象并点击对象,然后在限定时间内检测对象已消失,返回真。返回假的条件:1.首次查找对象未找到;2.找到对象后等待对象消失时间超时。
| 函数原型: gk.findubex(data[, tm[, click]]) gk.findubex2(data[, tm[, click]]) 参数描述: data 数组型(必选参数):图色数据,gk.find命令支持的所有图色数据 tm 整数型(可选参数):等待消失时间(单位:秒),等待对象消失的时间上限 click 布尔型(可选参数):是否点击,找到对象后是否执行点击操作 注:不填tm参数默认值为5;设tm为空字符则转换为5;不填click参数默认值为true 返回值: findubex 返回布尔值 findubex2 返回数组变量
数组变量(0)=布尔值(表示是否找到对象) 数组变量(1)=整数型(表示对象intx坐标) 数组变量(2)=整数型(表示对象inty坐标) 调用实例:
dim a() a(0)={176,426,260,504,"dbe8ff","35|-29|2b12e4,46|27|06bd02"} a(1)={174,418,265,513,"2f3bed","-4|-8|d2e6fe,18|-32|1b1f32"} traceprint gk.findubex(a) dim arr=gk.findubex2(a,10) traceprint arr(0),arr(1),arr(2)
【注意】:本扩展命令必须先通过数组或表的形式来打包data数据 |
findtmex、findtmex2
|
等待对象出现 直到对象消失,即在指定时间内查找对象(等待对象出现),找到后再等待其消失,则返回真。返回假的条件有:1.等待对象超时;2.对象在限定时间内未消失。
| 函数原型: gk.findtmex(data[, tm]) gk.findtmex2(data[, tm]) 参数描述: data 数组型/非数组型(必选参数):图色数据,gk.find命令支持的所有图色数据 tm 整数型(可选参数):等待出现/消失时间(单位:秒),等待对象出现和消失时间 注:不填tm参数默认值为5 返回值: findtmex 返回布尔值 findtmex2 返回数组变量
数组变量(0)=布尔值(表示是否找到对象) 数组变量(1)=整数型(表示对象intx坐标) 数组变量(2)=整数型(表示对象inty坐标) 数组变量(3)=整数型(返回找图对象的图片id) 调用实例:
[例1]
dim a={311,489,409,580,"attachment:图片.png",0.8} traceprint gk.findtmex(a,10) dim arr=gk.findtmex2(a) traceprint arr(0),arr(1),arr(2)
[例2] dim a={"attachment:截图2.png|attachment:截图1.png"} dim arr=gk.findtmex2(a)
traceprint arr(0),arr(1),arr(2),arr(3)
[例3] dim t={527,702,674,834,"attachment:截图1.png",true} dim arr= gk.findtmex2(t,3)
traceprint arr(0),arr(1),arr(2),arr(3)
[例4] dim arr= gk.findtmex2({527,702,674,834,"attachment:截图1.png"},3)
traceprint arr(0),arr(1),arr(2),arr(3)
【注意】: 1.本扩展命令理论上需要先通过数组或表的形式来打包data数据 2.不填tm参数时,data数据可以为非数组型,否则必须为数组型或表。 |
findubtmex、findubtmex2
|
遍历对象 等待对象出现 直到对象消失,即以遍历数组成员方式在指定时间内查找对象(等待对象出现),找到后再等待其消失,则返回真。返回假的条件有:1.等待对象超时;2.对象在限定时间内未消失。
| 函数原型: gk.findubtmex(data[, tm[, click]]) gk.findubtmex2(data[, tm[, click]]) 参数描述:
data 数组型(必选参数):图色数据,gk.find命令支持的所有图色数据
tm 整数型(可选参数):等待出现/消失时间(单位:秒),等待对象出现和消失时间 click 布尔型(可选参数):是否点击,找到对象后是否执行点击操作 注:不填tm参数默认值为5;设tm为空字符则转换为5;不填click参数默认值为true 返回值: findubtmex 返回布尔值 findubtmex2 返回数组变量
数组变量(0)=布尔值(表示是否找到对象) 数组变量(1)=整数型(表示对象intx坐标) 数组变量(2)=整数型(表示对象inty坐标) 调用实例:
dim a() a(0)={311,489,409,580,"attachment:图片.png"} a(1)={"219|463|ffffff,240|450|43c107,218|488|2d2fdf,207|482|d89b08"} traceprint gk.findubtmex(a)
dim arr=gk.findubtmex2(a,"",false) traceprint arr(0),arr(1),arr(2)
【注意】:本扩展命令必须先通过数组或表的形式来打包data数据 |
果壳万能插件rpa命令函数原型说明:(rpa命令目录) - 您所在的用户组无法下载或查看附件
1.[果壳式rpa暴力综合命令] 函数原型:gk.rpa(element_name,element_content,x1,y1,x2,y2,click,pattern)以暴力美学的方式穿透性查找所有界面元素,满足不同需求和用途,参数可变可选,调用简单方便,主打傻瓜化。本命令与gk.rpa_lookup命令配合使用,实现爬虫效果逆了个天!下载插件附送[唯品会商品信息抓取]完整源码。 | [参数说明]:参数element_name:字符型必选参数(仅想获取所有元素属性时所有参数皆可不填),元素属性名称(text、resource-id、class)。 参数element_content:字符型必选参数(仅想获取所有元素属性时所有参数皆可不填),元素属性内容(元素属性名称对应的值)。 参数x1,y1,x2,y2:整数型可选参数(省略表示不匹配范围坐标),界定元素对象形状的范围坐标,坐标值允许5个像素点的误差。 参数click:布尔型可选参数,用于表示找到元素对象后是否点击对象,省略默认为false(不点击)。 参数pattern:整数型可选参数,pattern的取值范围为0-3,表示查找元素的方式,省略默认为0。 pattern为0表示精确匹配指定元素属性(如填写元素对象形状范围坐标则需要同时满足元素对象形状的条件)。 pattern为1表示模糊匹配指定元素属性(如填写元素对象形状范围坐标则需要同时满足元素对象形状的条件)。 pattern为2表示仅匹配对象形状(由对象范围坐标界定),如未填写元素对象范围坐标或者其值全部为0则表示通杀获取所有元素的所有属性(不进行任何元素匹配)。 pattern为3表示即使填写了对象元素名称、对象元素属性或对象元素形状的参数,只要此处参数为3则表示强制获取所有元素的所有属性。 | [返回值说明]:返回一个表,可对表进行遍历元素的操作。通过if语句可直接对表是否存在进行判断(失败返回null),以确定指定查找的元素对象是否存在。 | [其它说明]:[gk.rpa 代码示例1]:匹配微信图标元素的text属性,匹配成功则打开微信
- if gk.rpa("text", "微信", true) then
- traceprint "打开微信:通过匹配对象元素text属性的方式"
- end if
复制代码 [gk.rpa 代码示例2]:同时匹配元素resource-id、calss属性,以及该元素对象的形状(范围坐标),匹配成功则激活对象- if gk.rpa("resource-id", "com.tencent.android.qqdownloader:id/pt", 156, 186, 204, 234, true) then
- traceprint "激活元素对象:通过匹配对象元素resource-id属性和元素对象形状(范围坐标)的方式。"
- end if
复制代码 [gk.rpa 代码示例3]:仅通过匹配元素对象的形状来激活对象- dim table={"","",430, 366, 570, 540,true,2}
- if gk.rpa(table) then
- traceprint "激活元素对象:仅通过匹配元素对象形状(范围坐标)的方式,且参数以表的形式传递。"
- end if
复制代码 [gk.rpa 代码示例4]:模糊匹配包含指定text关键字的元素标题。- dim table = gk.rpa("text", "下载", 1)
- if table then
- traceprint "模糊匹配查找包含“下载”的元素标题,已找到下载按钮"&len(table)&"个。"
- for i = 1 to len(table)
- for each k , v in table[i]
- traceprint k,v
- next
- next
- end if
复制代码 [gk.rpa 代码示例5]:参数以表的形式传入,指定元素属性为text属性,找到元素对象带点击- dim 微信={"text","微信",true}
复制代码 [gk.rpa 代码示例6]:仅想获取所有元素的所有属性,可以任何参数都不填写。本命令抓取元素的功力最为透彻- dim table=gk.rpa()
- for i=1 to len(table)
- for each k , v in table[i]
- traceprint k,v
- next
- next
复制代码 2.[果壳式rpa元素匹配] 函数原型: rpa_lookup(table,elementtable1,elementtable2,pattern1,pattern2)智能匹配待查找元素表中指定的元素属性。本命令结合gk.rpa果壳暴力综合命令一起使用:“天下武功,唯快不破” | [参数说明]:参数table:数据类型为table型(必选参数),所要进行在其中查找的元素表。 参数elementtable1:数据类型为table型(必选参数),该参数表中包含这样一组数据:1.所指定要查找的元素属性名称(字符型);2.所指定要查找的元素属性内容(字符型,即属性名称对应的值)。 参数elementtable2:数据类型为table型(可选参数),省略表示不匹配第二组指定元素属性值,若不省略则表示同一元素对象必须同时满足第一组和第二组的属性值才算匹配成功),参数格式参照elementtable1。 参数pattern1:数据类型为整数型(可选参数),取值范围为0-1,0表示精确匹配元素值,1表示模糊匹配text元素值,省略此参数默认为0。 参数pattern2:数据类型为整数型(可选参数),用于设置elementtable1和elementtable2是否需要同时满足条件,取值范围0和1,0表示需同时满足两项元素数据,1表示只满足一项即可,省略默认为0 | [返回值说明]:匹配成功返回所找元素对象的表,表中包含一系列属性值,匹配失败返回null。 | [其它说明]:1. 参数elementtable1或elementtable2 所代表的元素属性可为text、resource-id、class,可以实现两两一组,自由组合。 2. 参数elementtable1和elementtable2 为普通数组表,非键值对形式的表。
| [rpa_lookup 代码示例1]:匹配两组元素属性特征,来搜索所需要的元素对象- dim table,rettable,et1={"text","神武4"},et2={"class","android.widget.textview"}
- table=gk.rpa()
- rettable = gk.rpa_lookup(table, et1, et2)
- if rettable then
- for each k , v in rettable
- nexttraceprint k, v
- next
- end if
复制代码 [rpa_lookup 代码示例2]:单独匹配一组元素属性,且采用模糊匹配方式- dim rettable,table=gk.rpa()
- rettable = gk.rpa_lookup(table,{"text","神武"},1)
- if rettable then
- for each k , v in rettable
- traceprint k,v
- next
- end if
复制代码 [rpa_lookup 代码示例3]:抓取唯品会商品信息——爬虫开始爬行(注:下载插件附送完整源码)- dim ret,t,et() //et数组存入用于匹配元素对象的resource-id属性数据
- et(0)="com.achievo.vipshop:id/rebate_name" //商品名称
- et(1)="com.achievo.vipshop:id/product_item_sale_price" //商品价格
- dim table = gk.rpa("resource-id", "com.achievo.vipshop:id/product_list_recycler_view") //根据resource-id查找商品页面共同的父节点(找父亲)。
- if table then
- for i = 1 to len(table[1]["children"]) //遍历每一个包含商品信息项的子节点(找儿子)。
- for t = 1 to len(et)
- ret= gk.rpa_lookup(table[1]["children"][i],{"resource-id",et[t]}) //通过resource-id(由et数组变量传递)匹配对应的商品名称和商品价格。
- if ret then
- traceprint ret["text"] //找到商品名称或商品价格后,将其text属性值输出。
- end if
- next
- next
- end if
复制代码 3.[果壳式rpa元素追踪] 函数原型: rpa_track(element_name,element_content,index,step,stepupper,pattern)借助某一指定元素对象的“元素下标”来追踪定位下一个指定的元素对象,本命令需与gk.rpa暴力综合命令配合使用。 | [参数说明]:参数element_name:字符型必选参数,元素属性名称(text、resource -id、class)。 参数element_content:字符型必选参数,元素属性内容(元素属性名称对应的值)。 参数index:整数型必选参数,当前指定元素的遍历下标,即之前已用gk.rpa命令指定遍历出来的表元素的遍历下标,用于借助此下标来定位一下个指定的元素。 参数step:整数型可选参数(省略默认为1),向前或向后继续遍历元素的步长,负数向前,正数向后,请勿填0。 参数stepupper:整数型可选参数,表示步长上限,即定位搜索下一个元素所消耗的步长总数,当步长(step参数值)为1时,stepupper可简单理解为遍历次数上限,超过上限值则返回null(省略本参数默认为0,为0表示遍历整个元素表)。 参数pattern:整数型可选参数(省略默认为0),取值范围0-1,表示查找下一元素的方式,0为精确查找,1为模糊查找。 | [返回值说明]:返回通过定位追踪找到的下一个元素的text属性值,追踪失败返回null。 | [rpa_track 代码示例]:通过元素标题“京东特价商品”来定位下一个元素对象:该商品的价格信息。遍历出所有特价商品的价格- dim table=gk.rpa()
- for i = 1 to len(table)
- if table[i]["text"] = "京东特价商品" then
- dim text = gk.rpa_track("resource-id", "com.tencent.android.qqdownloader:id/awy",i)
- traceprint "特价商品"&i&":"&text
- end if
- next
复制代码 4.[果壳式过滤检查数据] 函数原型:gk.rpa_check(data)实现对重复数据的过滤判断,可用于rpa数据收集时使用,爽她个歪歪。 | [参数说明]:data(可变参数),data可以为一个table表(键值对),亦可为一个普通数组,亦可为n个字符型数据或数值型数据,或字符 数值混合参数传入都支持。 | [返回值说明]:所传数据重复出现(即第2次出现)时,返回false,表示数据检查未通过;若所传数据未达到重复出现的条件时则返回true,返回true表示数据检查通过。 | [其它说明]:1. data数据为多个值时表示所有指定的数据都必须同时满足已重复出现的条件才算通过检查,返回true,否则返回false。 2. 不可以同时传入表数据和非表数据,或者数组与非数组,且表或数组仅支持传递一个。 | [rpa_check 代码示例1]:以传入表数据的形式检查重复商品- dim 商品信息()
- for 2
- 商品信息["商品名称"] = "杜蕾斯"
- 商品信息["商品价格"] = "¥18"
- 商品信息["商品折扣"] = "8.8折"
- if gk.rpa_check(商品信息) then
- traceprint "商品信息检查通过,未出现重复数据。"
- else
- traceprint "商品信息检查未通过,出现重复数据。"
- end if
- next
复制代码 [rpa_check 代码示例2]:以传入多个普通变量的方式检查重复商品- dim 商品名称="杜蕾斯",商品价格 = "¥18",商品折扣 = "8.8折"
- for 2
- if gk.rpa_check(商品名称, 商品价格, 商品折扣) then
- traceprint "商品信息检查通过,未出现重复数据。"
- else
- traceprint "商品信息检查未通过,出现重复数据。"
- end if
- next
复制代码 5.[遍历查找指定元素属性] 函数原型:gk.rpa_find(class, text)[参数说明]:参数class:指定元素对象的类名(可选参数)。 参数text:指定元素对象的标题(可选参数)。 | [返回值说明]:1. 返回一个表,该表包含所找元素对象的所有属性,未找到返回null。 2. 若找到元素对象,所包含的关键属性有:text、resource-id、class、left、top、right、bottom | [其它说明]:1. 若两个参数皆为空则表示遍历查找当前界面所有元素的所有属性,效果等价于gk.rpa_getall命令。 2. 若仅填写class参数则返回包括该class属性的所有元素对象。 3. 若仅填text属性则返回包含该text属性的所有元素对象。 | [rpa_find 代码示例1]:通过元素类名(class)和元素标题(text)来抓取微信桌面图标的元素数据- dim table = gk.rpa_find("android.widget.textview","微信")
- if table then
- traceprint "果壳式find查找指定元素属性(类名 标题),共"&len(table)&"个"
- for i = 1 to len(table)
- for each k , v in table[i]
- traceprint k,v
- next
- next
- end if
复制代码 [rpa_find 代码示例2]:通过元素标题属性(text)查找微信图标- dim table = gk.rpa_find("微信")
- traceprint "果壳式find查找指定元素属性(标题),共"&len(table)&"个"
复制代码 [rpa_find 代码示例3]:遍历查找当前界面所有元素对象,效果等价于gk.rpa_getall命令- dim table = gk.rpa_find()
- traceprint "果壳式find查找当前界面所有元素属性(不指定类名和标题),共"&len(table)&"个" ",
复制代码 6.[获取所有元素属性] 函数原型:gk.rpa_getall()获取当前界面的所有元素属性。如需抓取更深层次结构的元素,推荐使用gk.rpa暴力综合命令:table=gk.rpa() | [参数说明]:[返回值说明]:返回一个表,可获取到的元素属性包括:text、resource-id、class、left、top、right、bottom | [rpa_all 代码示例]:获取当前界面所有元素属性并将其逐一输出- dim table = gk.rpa_getall()
- if table then
- traceprint "果壳式getall获取元素属性,共"&len(table)&"个"
- for i = 1 to len(table)
- for each k , v in table[i]
- traceprint k,v
- next
- next
- end if
复制代码 7.[获取元素层级属性] 函数原型: gk.rpa_getfull()获取当前界面的层级元素属性。如需抓取更深层次结构的元素,推荐使用gk.rpa暴力综合命令:table=gk.rpa() | [参数说明]:[返回值说明]:返回一个表,可获取到的元素属性包括:text、resource-id、class、left、top、right、bottom | [rpa_getfull 代码示例]:
- dim table = gk.rpa_getfull()
- if table then
- traceprint "果壳式getfull获取元素属性,共"&len(table)&"个"
- for i = 1 to len(table)
- for each k , v in table[i]
- traceprint k,v
- next
- next
- end if
复制代码 8.[获取所有元素标题] 函数原型: gk.rpa_gettext()[参数说明]:[返回值说明]:[rpa_gettext 代码示例]:- dim table = gk.rpa_gettext()
- if table then
- traceprint "果壳式gettext获取所有元素标题,共"&len(table)&"个"
- for each k , v in table
- traceprint k,v
- next
- end if
复制代码 9.[点击元素对象中心] 函数原型: gk.rpa_click(left,top,right,bottom)[参数说明]:参数数据类型为数值型,4个参数值分别代表某一元素对象的范围坐标值(左上角横坐标、左上角纵坐标、右下角横坐标、右下角纵坐标)。 | [返回值说明]:[rpa_click 代码示例]:抓取元素对象微信图标的范围坐标数据,并点击该对象中心点- dim table = gk.rpa("text", "微信")
- if len(table) = 1 then
- gk.rpa_click(table[1]["left"],table[1]["top"],table[1]["right"],table[1]["bottom"])
- end if
复制代码 ★果壳福利果壳学院安卓按键编程模板源码下载: 果壳coc综合插件: 《果壳学院安卓按键课程》第一季免费教学视频(剑侠世界) 《果壳学院安卓按键课程》第二季免费教学视频(梦幻诛仙) 《果壳学院安卓按键课程》第三季免费教学视频(雷霆战机) 《果壳学院安卓按键课程》第四季免费教学视频(coc) 《果壳学院安卓按键课程》第五季免费教学视频(梦幻西游) 《果壳学院综合课外课》免费教学视频:《guoke-hot(果壳热) - 按键x第一季 - 梦幻大电影》免费教学视频: 《guoke-hot(果壳热) - 按键x第二季 - 多线程跳一跳大电影》免费教学视频:
|