窗口检测错误
目标是判断左侧公司是不是存在
已经是使用管理员运行, 同时对 iS-RPA 目录 添加了 everyone 的全控制权限。
iS-RPA 目录下的日志没有错误
只有运行时的错误
C:\iS-RPA\studio-v6>“C:/iS-RPA/studio-v6/../plugin/Com.Isearch.Func.Python/python.exe” “C:/iS-RPA/studio-v6/project/HelloWord\codes\Main.py”
Main.py- “StepNodeTag:01151927176”,Note:
iwin.py-窗口激活动作:[网上电子申报 - eTax@SH 3]
Main.py- “StepNodeTag:05161305165”,Note:
iimg.py- 准备是否存在 识别图片
iimg.py- 准备执行 [img_exists] 动作
iwin.py-窗口是否激活:[网上电子申报 - eTax@SH 3]
[WinError 5] 拒绝访问。 Traceback (most recent call last):
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\ubpa\iimg.py”, line 342, in img_exists_au3
status, error_string, stdout_string = nit.run_autoit(tmp_au3_file_path)
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\ubpa\base_native_ait.py”, line 33, in run_autoit
raise e
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\ubpa\base_native_ait.py”, line 26, in run_autoit
proc = subprocess.Popen(command, stdin=subprocess.PIPE, stderr=subprocess.PIPE, stdout=subprocess.PIPE)
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\subprocess.py”, line 709, in init
restore_signals, start_new_session)
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\subprocess.py”, line 997, in _execute_child
startupinfo)
PermissionError: [WinError 5] 拒绝访问。
iimg.py-au3 结束执行 [img_exists] 动作 False
iimg.py-ImageSearch 未误取、使用 OpenCV 识取
iimg.py- 准备 OpenCV 识取操作
iimg.py-OpenCV 识别返回信息 :{‘result’: [157.5, 835.0], ‘rectangle’: [[80, 822], [81, 847], [235, 848], [235, 822]], ‘confidence’: [20, 27]}
iimg.py- 缩放比例为:1.0
iimg.py- 计算之前位置:[157.5, 835.0]
iimg.py- 计算之后位置:[157.5, 835.0]
iimg.py-OpenCV 识别信心度 :0.7407407407407407
iimg.py- 结束执行 [img_exists] 动作 True
Main.py- “StepNodeTag:01152251876”,Note:
Traceback (most recent call last):
File “C:/iS-RPA/studio-v6/project/HelloWord\codes\Main.py”, line 32, in
pro.Main()
File “C:/iS-RPA/studio-v6/project/HelloWord\codes\Main.py”, line 28, in Main
rpa_str.iprint(param=“输出:”+lv_win)
TypeError: must be str, not bool
8.0 版本会首先尝试将元素带到可见区域,滚动条问题 8.0 解决,大约 12 月发布
模拟点击滚动条有点效率问题,万一这个滚动条比较长怎么办?假设初始滚动条在顶部,这样是否需要比较长的时间?
uipath 里的操作方式是获取左侧菜单的控件里找到所有公司名称的子控件,判断是否存在这个公司名称,然后使用 onfocus 动作就可以定位了
已添加白名单,好像还是出错
问题 1: 试试将我们的目录和程序加入 360 白名单呢
问题 2: 可以图片方式模拟点击滚动条,也可以写个小函数模拟滚动的动作,参考 http://support.i-search.com.cn/article/1538052433225
恩,关闭 360 后是成功了,但实际客户环境是有 360 的,难道要求客户关闭 360?
另外问一下,你看我发的截图,我要找的公司是在滚动条下部的,假设当时滚动条未拖拉到底部而是在顶部,这个时候我该如何去查找?
看看个人电脑的安全软件关闭一下,或者试试管理员身份运行
C:\iS-RPA\studio-v6>
“C:/iS-RPA/studio-v6/../plugin/Com.Isearch.Func.Python/python.exe” “C:/iS-RPA/studio-v6/project/HelloWord\codes\Main.py”
Main.py- “StepNodeTag:01151927176”,Note:
iwin.py-窗口激活动作:[网上电子申报 - eTax@SH 3]
Main.py- “StepNodeTag:05161305165”,Note:
iimg.py- 准备是否存在 识别图片
iimg.py- 准备执行 [img_exists] 动作
iwin.py-窗口是否激活:[网上电子申报 - eTax@SH 3]
C:\iS-RPA\temp\XCcl08uf.au3
None
[WinError 5] 拒绝访问。 Traceback (most recent call last):
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\ubpa\iimg.py”, line 342, in img_exists_au3
status, error_string, stdout_string = nit.run_autoit(tmp_au3_file_path)
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\ubpa\base_native_ait.py”, line 33, in run_autoit
raise e
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\ubpa\base_native_ait.py”, line 26, in run_autoit
proc = subprocess.Popen(command, stdin=subprocess.PIPE, stderr=subprocess.PIPE, stdout=subprocess.PIPE)
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\subprocess.py”, line 709, in init
restore_signals, start_new_session)
File “C:\iS-RPA\plugin\Com.Isearch.Func.Python\lib\subprocess.py”, line 998, in _execute_child
startupinfo)
PermissionError: [WinError 5] 拒绝访问。
从这个运行错误看是临时文件访问错误
感觉像是窗口激活失败了,把窗口标题的勾选去掉试试。
另外,如果要判断这个页面是否已经打开或某些文本是否存在,可以使用获取文本来判断,这样效率会更快一些,如果获取到文本则表示页面正确打开,没有获取到则反之,可以试试看。