• 有写得不对的地方多提提意见 😝

  • 发了这么多帖子终于有一个上优选了 😂

  • 一般的解决办法是修改日志等级至更高,
    改一下 ilog.py 文件第 44 行:

    self.fh.setLevel(logging.DEBUG)
    
  • 关于 vpn

    2018-12-24 18:31

    洋葱浏览器还是优秀啊

  • 可以做一个九齿钉耙出来了

  • 挺好的,加油!

  • 【SAP】优化翻页方法

    2018-12-11 12:32

    带哥秀起来了

  • 靖哥也开始修改源码了 😎

  • 对的,像这种就没必要用原始字符串了,直接三引号就行

  • 啊呀,不是的林总,我这个虽然放在了建议板块,但是只有其中一部分是建议(就是帖子里面字体为斜体的部分)
    总共两个建议:
    1. 含有 watifor 的控件一般都是用 while True 来循环判断,每一秒都会执行上万次 while 循环,像这种控件可以在每一次循环都 sleep 很短的时间,这样既不影响机器人执行效率,又对那些运行速度卡的电脑比较友好
    2. 有些控件就算设置等待时间 waitfor 也没有作用,是因为函数体里面漏加了代码,我目前发现的只有检测窗体是否激活这个 do_win_isactive() 函数,其他也可能有同样的问题,这个需要你们去检查一下

  • 我这个问题比较特殊,两种窗口都有可能会跳出来,不确定会跳出哪一个。而且要等很久,每一次时间也不一定,所以 waitfor 只能稍微加高一点,没法先判断其中一个窗口,等 waitfor 时间到了再判断另一个窗口,这样效率很低
    我合并只是另外写了一个方法,正常情况下还是调用原来的 do_win_is_active() 函数就行了 😹

  • 如果只想自己指定名字,不想要后面的随机名称,可以进入文件夹 C:\is-RPA\plugin\Com.Isearch.Func.Python\Lib\ubpa
    打开其中的 iimg.py 文件,将第 512 行与第 514 行的 ran_str 删除,如图所示
    dc77d7e28fcd4457accb1b680ad65817_image.png

    注意:这种方法在选了图片位置以后必须在后面设定文件名,否则会报错
    5de04de34d3a4cf981131f8ee6a989d9_image.png

  • 对于全局函数的理解

    2018-11-28 16:02

    我手动配置的环境变量只有这两个:

    C:\is-RPA\plugin\Com.Isearch.Func.Python\Scripts
    C:\is-RPA\plugin\Com.Isearch.Func.Python\
    

    而且运行的时候 C:\is-RPA\studio-v6\project 这个文件夹下有好几个项目,里面的 codes 文件夹下都有名为 Main.py 的文件
    运行的时候也没有报错什么的
    这么看来应该是设计器运行的时候自动将当前项目添加为环境变量,这样就不会从其他项目中搜索 Main.py 了

  • 控件经常无法使用

    2018-11-23 15:25

    我用那个鼠标点击控件报这个错误:
    604f0265b3434ccca159446cff7785f3_image.png

    好像是 dll.getElementRect() 这个方法返回了错误的内存地址
    dll 用的是这个:

    dll = cdll.LoadLibrary("../../bin/UEBAIEWatcher.dll")
    

    不知道你有没有碰到过这个问题

  • 判断单个单元格还是可以用的吧

  • 破解极验滑动验证码

    2018-11-21 21:06

    这个厉害了!

  • 鼠标减速拖动

    2018-11-21 21:00

    过奖啦 😄

  • 很好的分享,学习了!

  • 这个世界需要更多英雄专家!

  • 鼠标 非匀速 拖动

    2018-11-16 09:48

    get_random_num 函数中只写了 x1 比 x2 小的操作,x1 比 x2 大的时候由于 random.randint() 方法行不通就直接写了 pass
    所以会直接返回空字符串,因此想要从右往左移动的时候就会报错

    可以把 pass 代码更改一下, 里面 num 和 x2 的位置互换,这边代码有点乱,现将代码整理如下:

    import random
    from ubpa.iconstant import *
    import ubpa.base_native_ait as nit
    
    def move_to_move_pack_au3(x1,y1,str_xy,pause):
        str_xy_list = str_xy.split(",")
        pre_msg = "#include <AutoItConstants.au3>" \
                + '\n' + "MouseMove(" + str(x1) + "," + str(y1) + ")" \
                + '\n' + "Opt('MouseClickDownDelay', 50000)" \
                + '\n' + "MouseDown($MOUSE_CLICK_LEFT)"
        for index in str_xy_list:
            pos = index.split(".")
            x = pos[0]
            y = pos[1]
            pre_msg = pre_msg + '\n' + "MouseMove(" + x + "," + y + ")" \
                    + '\n' + "Sleep(" + str(pause) + ")"
        
        pre_msg = pre_msg + '\n' + "MouseUp($MOUSE_CLICK_LEFT)"
        
        return pre_msg
        
    def get_random_num(x1,x2,y2,point=2):  # 输出整数部分为x1到x2之间,小数部分都为y2,个数一共为point的值
        str_xy = ""
        if x1 <= x2:
            num = x1
            for i in range(1,point):
                num = random.randint(num,x2)  # 取num和x2之间随机的一个整数
                str_xy = str_xy + str(num) + "." + str(y2) + ","
            str_xy = str_xy + str(x2) + "." + str(y2)  # 字符串最后加上终点
        else:
            num = x1
            for i in range(1,point):
                num = random.randint(x2,num)  # 取num和x2之间随机的一个整数
                str_xy = str_xy + str(num) + "." + str(y2) + ","
            str_xy = str_xy + str(x2) + "." + str(y2)  # 字符串最后加上终点
        print(str_xy)
        return str_xy
        
    def mouse_unrule_moveto(x1,y1,x2,y2,point=3,pause=500):
        str_xy = get_random_num(x1, x2, y2, point)
        msg = move_to_move_pack_au3(x1,y1,str_xy,pause)  # 拼接生成.au3文件用的字符串
        tmp_au3_file_path = nit.gen_au3_file(msg)  # 生成.au3文件返回地址
        nit.run_autoit(tmp_au3_file_path)  # python执行脚本文件
        nit.cleanup(tmp_au3_file_path)  # 清除.au3文件
    

光头雷
yanglei1
  • 6 标签
  • 214 帖子
  • 177 回帖

个人主页