如何使用python selenium获取Internet Explorer的浏览器控制台日志

时间:2015-01-06 10:44:49

标签: python selenium-webdriver

我正在使用python selenium和Internet Explorer为HTML5 Web应用程序编写测试自动化套件。如何使用python selenium获取Internet Explorer的浏览器控制台日志。我设法在Google Chrome上获取相同应用程序的控制台日志。我使用了以下代码段

chromedriver="C:\Python27\chromedriver.exe"
os.environ["webdriver.chrome.driver"]=chromedriver
# enable browser logging
d = DesiredCapabilities.CHROME 
d['loggingPrefs'] = { 'browser':'ALL' }
driver=webdriver.Chrome(executable_path=chromedriver,desired_capabilities=d)


# test specific code in python selenium


# printing the chrome browser specific logs on console
for entry in driver.get_log('browser'):
    for key,val in entry.items() :
        if key == "message" :
            print val 

在上面的代码中," print val"将在控制台上打印chrome浏览器日志。但相同的代码不适用于Internet Explorer

我将Chrome特定信息替换为Internet Explorer特定信息]

Iedriver="C:\Python27\IEDriverServer.exe"
os.environ["webdriver.Ie.driver"]=  Iedriver
# enable browser logging
d = DesiredCapabilities.INTERNETEXPLORER
d['loggingPrefs'] = { 'browser':'ALL' }
driver=webdriver.Ie(Iedriver,d)

但我无法获取特定于浏览器的日志。有人可以帮我吗?如何使用python selenium获取Internet Explorer上任何应用程序的浏览器控制台?

1 个答案:

答案 0 :(得分:3)

Internet Explorer驱动程序不支持检索任何类型的日志。这些功能将被忽略,并且从语言绑定到JSON有线协议的日志记录端点的调用将返回错误响应。 SPI协议定义不明确,很少考虑其设计。它正在作为W3C规范工作的一部分进行审核和重新设计。一旦重新设计完成,我希望IE驱动程序在那时采用支持。