在某些特定的环境下,IE会出现卡死(未响应)的情况,当出现此状态时所有的IE操作都会卡住并等待IE再次响应,在RPA中有默认的超时机制,如果操作的IE或其他win32程序在指定的超时时间(1小时)内未响应就会抛出rpa.core.Au3TimeoutError异常 要使用超时机制客户端版本必须为3.3.19及以上
示例代码:
rpa.it.settimeout(2*60) # 超时时间设置为2min
def test_iecreate_timeout(): """测试IE卡死的问题,当IE出现未响应状态时重试5次 """ for _ in range(5): try: # Win7+IE8下面的语句可能会导致IE未响应 rpa.ie.create('https://www.microsoft.com/zh-cn/download/internet-explorer-11-for-windows-7-details.aspx') return except rpa.core.Au3TimeoutError: # 捕获超时异常 print('操作超时, 原因可能是IE出现了未响应状态, 重试') # 初始化运行环境: # 境IE进入未响应状态后,所有的IE对象都将无法正常使用,这里需要清理所有的IE进程 os.system('taskkill /f /im iexplore.exe') raise Exception('无法通过IE浏览器打开网页,请检查IE环境是否存在异常')
def start(): test_iecreate_timeout()
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。