Как настроить GeckoDriver с уровнем журнала и местоположением журнала через Selenium и Python? - PullRequest
0 голосов
/ 13 сентября 2018

Я новичок в python, я написал программу для сбора информации для меня (python + selenium + geckodriver + firefox), все работало нормально, но geckodriver.exe генерировал слишком много логов, иногда размер файла geckodriver.log один. даже достиг 8 ГБ.

Я искал по galaxy, google и stackoverflow, я не могу найти решение для отключения geckodriver.log, этот вопрос похож на мой , я знаю, использование какого-либо параметра может уменьшить log

geckodriver.exe --log fatal

И я знаю, что python может назначить путь geckodriver

driver=webdriver.Firefox(executable_path='C:\geckodriver.exe')

Можно ли объединить их вместе? Как показано ниже:

driver=webdriver.Firefox(executable_path='C:\geckodriver.exe --log fatal')

Я пытался, но не смог, кто-нибудь может мне помочь? Спасибо!

1 Ответ

0 голосов
/ 14 сентября 2018

При работе с Selenium v3.14.0 Python Client до уменьшите журналы, сгенерированные GeckoDriver и перенаправьте журналы в определенный файл журнала , вы можете использовать следующее решение:

  • Использование service_log_path:

    driver = webdriver.Firefox(firefox_options=options, executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe', service_log_path='./Logs/geckodriver_service_log_path.log')
    
  • Использование log_path:

    driver = webdriver.Firefox(firefox_options=options, executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe', log_path='./Logs/geckodriver_log_path.log')
    
  • Для настройки Log Level и включения log log вы можете использовать следующее решение:

    from selenium import webdriver
    from selenium.webdriver.firefox.options import Options
    from selenium.webdriver.firefox.options import Log
    
    log = Log()
    log.level = "TRACE"
    options = Options()
    options.add_argument(log.level)
    driver = webdriver.Firefox(firefox_options=options, executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe', service_log_path='./Logs/geckodriver_service_log_path.log')
    # driver = webdriver.Firefox(firefox_options=options, executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe', log_path='./Logs/geckodriver_log_path.log')
    driver.get('http://google.com/')
    print(driver.title)
    driver.quit()
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...