Chrome - автоматическое открытие инструментов разработчика в сети и сохранение журнала

Я использую драматурга для автоматизации тестирования. Каждый тестовый запуск создает новый экземпляр хрома. Когда я прохожу --auto-open-devtools-for-tabs, он открывает инструменты разработчика, как и ожидалось. Но мне нужно сделать еще один шаг и включить флажок Perserve Log. Тесты проходят быстро, и мне нужно видеть запросы перед перенаправлением.


person Ján Dubčák    schedule 27.04.2021    source источник


Ответы (1)


Основываясь на этом ответе, одним трюком будет загрузка браузера с persistent_context, закрыв браузер, а затем отредактируйте файл настроек, установив значение Preserve log.

user_data_dir = './prefs'
pref_file_path = user_data_dir + '/Default/Preferences'
browser = playwright.chromium.launch_persistent_context(user_data_dir, headless=False, args= ['--auto-open-devtools-for-tabs'])
browser.close()

with open(pref_file_path, 'r') as pref_file:
    data = json.load(pref_file)

data['devtools'] = {
    'preferences': {
        'network_log.preserve-log': '"true"'
    }
}

with open(pref_file_path, 'w') as pref_file:
    json.dump(data, pref_file)

browser = playwright.chromium.launch_persistent_context(user_data_dir, headless=False, args= ['--auto-open-devtools-for-tabs'])
page = browser.new_page()
page.goto('https://stackoverflow.com/questions/63661366/puppeteer-launch-chromium-with-preserve-log-enabled')
person hardkoded    schedule 27.04.2021