首页 > 解决方案 > 从 selenium get_log 函数获取错误数组

问题描述

我想从 Chrome 控制台中提取数组错误。

我有一个带有 OpenBrowserAndLog 函数的 RIDE 应用程序,它应该以日志记录模式打开浏览器,如下所示:

${c_opts}=  Evaluate    sys.modules['selenium.webdriver'].ChromeOptions()   sys, selenium.webdriver
Call Method ${c_opts}   add_argument    enable-logging
Call Method ${c_opts}   add_argument    v\=1
Call Method ${c_opts}   add_argument    loglevel\=ERROR
Create Webdriver    Chrome  crm_alias   chrome_options=${c_opts}

然后,我有一个使用 selenium 库和 webdriver 提取这些日志的 python 脚本:

from robot.libraries.BuiltIn import BuiltIn

def get_log():
    selib = BuiltIn().get_library_instance('SeleniumLibrary')
    f = open('get_log_result.txt', 'a')
    str1 = ', '.join(map(str,selib.driver.get_log('browser')))
    f.write(str1)
    f.close()
    return True

我的输出是:

'source': 'network', 'timestamp': 1563272856199}, {'level': 'SEVERE', 'message': 'https://10.158.114.251:3080/hijat2-ui-static/main.4380998255cb0e09727f.js 0:908345 "ERROR" Array(10)', 'source': 'console-api', 'timestamp': 1563272876919} 

我想要得到的是“错误”数组中的 10 个错误

标签: robotframework

解决方案


推荐阅读