Как сбросить файл Har, используемый модулем Browser-Mob-Proxy для Python? - PullRequest
0 голосов
/ 24 июня 2019

Я использую модуль browser-mob-proxy и selenium for python, чтобы записывать некоторые вещи, которые отправляются веб-сайтом, когда вы его используете.

То, что я делаю, - это создание сервера с использованием browser-mob-proxy, а затем создание прокси для этого сервера. Затем я создаю HAR для записи данных. Позже я использую эти данные для чего-то другого.

Я хочу знать, есть ли способ сбросить файл HAR так, чтобы он был пустым, или мне нужно будет создать новый HAR для хранения новых данных.

Прокси назначен браузеру селена, который использует драйвер chrome.

1 Ответ

0 голосов
/ 15 июля 2019

Я делаю это в своей среде тестирования, чтобы каждый тест имел свой собственный файл HAR для целей отладки.Даже когда они используют один и тот же браузер.

Команда, которую вы ищете, это "new_har".Это создает новый сеанс и начинает запись в новый файл HAR.Вы также можете указать имя для сеанса.Обычно я сначала получаю старый HAR и сохраняю его перед очисткой и началом нового сеанса.Но вам не нужно этого делать, если все, что вам нужно, это очистить журнал прокси.

Вот пример использования модуля Python.

from browsermobproxy import Server
server = Server("path/to/browsermob-proxy")
server.start()
proxy = server.create_proxy()

from selenium import webdriver
profile  = webdriver.FirefoxProfile()
profile.set_proxy(proxy.selenium_proxy())
driver = webdriver.Firefox(firefox_profile=profile)

proxy.new_har("google") # Start first session
driver.get("http://www.google.co.uk")
proxy.har # returns a HAR JSON blob for first session

proxy.new_har("Yahoo") # Start second session
driver.get("http://www.yahoo.co.uk")
proxy.har # returns a HAR JSON blob for second session

server.stop()
driver.quit()
...