首页 > 技术文章 > [远航笔记流水账]易语言调用大漠初级入门(2)

zjl8455482 2019-02-25 14:14 原文

1.易语言调用大漠之鼠标操作说明

本节没什么特别的只是谈了谈 大漠鼠标移动 和大漠的右键点击 没了 也没什么特别的两点

.版本 2
.支持库 spec

全局大漠.找图 (0, 0, 2000, 2000, “表情包标志.bmp”, “202020”, 0.9, 0, intX, intY)
调试输出 (到文本 (intX) + “:” + 到文本 (intY))
.如果真 (intX > 0 且 intY > 0)
    全局大漠.鼠标移动 (intX, intY)
    辅助延时 (1000)
    全局大漠.鼠标_右键单击 ()
    辅助延时 (1000)
    全局大漠.鼠标_右键单击 ()
    辅助延时 (1000)

2.易语言调用大漠之鼠标移动

小知识:实现鼠标模拟人操作的轨迹 基础防封手段

老师直接用的是大漠收费版的命令 的确挺好用

.版本 2

全局大漠.鼠标_模拟真实_VIP (1, 100, 40)
全局大漠.鼠标移动 (1334, 748)


后来想了想 练练手  写了一个子程序实现同样的功能 仅供参考

.版本 2
.支持库 spec

.子程序 个人版鼠标模拟真实轨迹, , 公开
.参数 终点x, 整数型
.参数 终点y, 整数型
.参数 移动间隔时间, 整数型, , 毫秒单位
.参数 移动间隔距离, 整数型
.局部变量 鼠标当前x, 整数型
.局部变量 鼠标当前y, 整数型
.局部变量 a, 双精度小数型
.局部变量 b, 双精度小数型
.局部变量 轨迹x, 整数型
.局部变量 轨迹y, 整数型

' 基本思路
' =0 对参数进行一点点的检测和格式化 不写了 写起来没个完了
' =1.获取当前鼠标位置 不要使用易语言自身的获取鼠标坐标 因为可能没考虑后台和前台的问题 还是用大漠本身的函数
全局大漠.鼠标_取位置 (鼠标当前x, 鼠标当前y)
调试输出 (“鼠标当前位置” + 到文本 (鼠标当前x) + “:” + 到文本 (鼠标当前y))
' =2 计算出当前鼠标位置和终点位置距离 并且计算出一元二次方程式的参数  终点纵坐标=a*终点横坐标+b 鼠标当前纵坐标=a*鼠标当前横坐标+b
a = (终点y - 鼠标当前y) ÷ (终点x - 鼠标当前x)
b = (终点y × 鼠标当前x - 终点x × 鼠标当前y) ÷ (鼠标当前x - 终点x)
调试输出 (“a,b值:” + 到文本 (a) + “:” + 到文本 (b))
' =3 主循环开始 依次增加间隔距离直到到达终点
' ==判断下从哪个方向移动 横纵两个方向 哪个方向上距离大就用哪个方向
.如果 (取绝对值 (终点y - 鼠标当前y) ≥ 取绝对值 (终点x - 鼠标当前x))

    ' ====就从纵向走 还要分逆向还是正向
    .如果 (终点y - 鼠标当前y ≥ 0)
        调试输出 (“纵向走-正向”)
        .变量循环首 (鼠标当前y, 终点y, 移动间隔距离, 轨迹y)
            轨迹x = 到整数 ((轨迹y - b) ÷ a)
            全局大漠.鼠标移动 (轨迹x, 轨迹y)
            辅助延时 (移动间隔时间)
        .变量循环尾 ()

    .否则
        调试输出 (“纵向走-逆向”)
        .变量循环首 (鼠标当前y, 终点y, -移动间隔距离, 轨迹y)
            轨迹x = 到整数 ((轨迹y - b) ÷ a)
            全局大漠.鼠标移动 (轨迹x, 轨迹y)
            辅助延时 (移动间隔时间)
        .变量循环尾 ()
    .如果结束

.否则
    ' ====就从横向走
    .如果 (终点x - 鼠标当前x ≥ 0)
        调试输出 (“横向走-正向”)
        .变量循环首 (鼠标当前x, 终点x, 移动间隔距离, 轨迹x)
            轨迹y = 到整数 (a × 轨迹x + b)
            全局大漠.鼠标移动 (轨迹x, 轨迹y)
            辅助延时 (移动间隔时间)
        .变量循环尾 ()

    .否则
        调试输出 (“横向走-逆向”)
        .变量循环首 (鼠标当前x, 终点x, -移动间隔距离, 轨迹x)
            轨迹y = 到整数 (a × 轨迹x + b)
            全局大漠.鼠标移动 (轨迹x, 轨迹y)
            辅助延时 (移动间隔时间)
        .变量循环尾 ()
    .如果结束

.如果结束

' =4 移动到终点位置 完成操作 因为前面的间隔移动无法保证最后一定会移动到终点位置
全局大漠.鼠标移动 (终点x, 终点y)
辅助延时 (移动间隔时间)

3.易语言调用大漠之鼠标特征说明及应用

看起来这玩意似乎对于安卓模拟器用处不大

鼠标特征码用综合工具来取

image

用法

.版本 2
.支持库 spec

.如果真 (全局大漠.圆形渐开线 (“10fb337f”, 186, 494, 12, 10, 10, 100, intX, intY))
    调试输出 (“鼠标特征码位置:” + 到文本 (intX) + “:” + 到文本 (intY))



123

推荐阅读