Bar*_*t77 1 selenium automated-tests python-3.x selenium-chromedriver selenium-webdriver
我正在尝试在自动测试运行期间从 Chrome 捕获日志。代码如下:
binary_path = 'Chromium'
chromedriver_path = 'chromedriver'
opts = Options()
opts.binary_location = binary_path
d = DesiredCapabilities.CHROME
d['goog:loggingPrefs'] = { 'browser':'ALL',
'driver': 'ALL'}
driver = webdriver.Chrome(chromedriver_path, desired_capabilities=d, options=opts)
#EXAMPLE TO GET LOGS
driver.get('https://www.google.com/')
driver.find_element_by_name('q').send_keys('abc')
print('browser = ', driver.get_log('browser'))
print('driver = ', driver.get_log('driver'))
for entry in driver.get_log('browser'):
print('entry = ', entry)
driver.quit()
Run Code Online (Sandbox Code Playgroud)
打印输出:
browser = []
driver = []
Run Code Online (Sandbox Code Playgroud)
我的问题是,为什么条目没有打印以及为什么 chrome 日志没有输出
尝试使用ChromeOptions而不是选项。
另外,不确定为什么使用 Chromium,这可能会影响结果。我修改了您的代码,以下代码适用于 Chrome 浏览器:
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver import ChromeOptions
opts = ChromeOptions()
d = DesiredCapabilities.CHROME
d['goog:loggingPrefs'] = {'browser': 'ALL',
'driver': 'ALL'}
driver = webdriver.Chrome(desired_capabilities=d, options=opts)
#EXAMPLE TO GET LOGS
driver.get('https://www.google.com/')
driver.find_element_by_name('q').send_keys('abc')
print('browser = ', driver.get_log('browser'))
print('driver = ', driver.get_log('driver'))
for entry in driver.get_log('browser'):
print('entry = ', entry)
driver.quit()
Run Code Online (Sandbox Code Playgroud)
它打印出来=>
browser = []
driver = [{'level': 'INFO', 'message': 'Populating Preferences file: {\n "alternate_error_pages": {\n "enabled": false\n },\n "autofill": {\n "enabled": false\n }, ... ]
Run Code Online (Sandbox Code Playgroud)
我希望这有帮助,祝你好运!
| 归档时间: |
|
| 查看次数: |
5986 次 |
| 最近记录: |