Как отключить все звуки в хромовом webdriver с селеном

Я хочу написать сценарий, в котором я использую пакет selenium следующим образом:

from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.youtube.com/watch?v=hdw1uKiTI5c") 

теперь после получения желаемого URL-адреса я хочу отключить звук хром. как я мог это сделать? что-то вроде этого:

 driver.mute() 

возможно ли это с любыми другими Webdrivers? как Firefox или …?

One Solution collect form web for “Как отключить все звуки в хромовом webdriver с селеном”

Не уверен, можете ли вы, как правило, на любой странице, сделать это после того, как вы открыли страницу, но вы можете отключить весь звук в течение всего сеанса браузера, установив переключатель --mute-audio switcher:

 from selenium import webdriver chrome_options = webdriver.ChromeOptions() chrome_options.add_argument("--mute-audio") driver = webdriver.Chrome(chrome_options=chrome_options) driver.get("https://www.youtube.com/watch?v=hdw1uKiTI5c") 

Или вы можете отключить видеопроигрыватель HTML5 напрямую :

 video = driver.find_element_by_css_selector("video") driver.execute_script("arguments[0].muted = true;", video) 

Возможно, вам придется добавить некоторую задержку до этого, чтобы позволить инициализировать видео, прежде чем приглушить его. time.sleep() не лучший способ сделать это – лучший способ подписаться на событие loadstart – здесь можно найти реализацию Python.

Подводя итог – полная реализация:

 from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium import webdriver driver = webdriver.Chrome() driver.set_script_timeout(10) driver.get("https://www.youtube.com/watch?v=hdw1uKiTI5c") # wait for video tag to show up wait = WebDriverWait(driver, 5) video = wait.until(EC.visibility_of_element_located((By.TAG_NAME, 'video'))) # wait for video to be initialized driver.execute_async_script(""" var video = arguments[0], callback = arguments[arguments.length - 1]; video.addEventListener('loadstart', listener); function listener() { callback(); }; """, video) # mute the video driver.execute_script("arguments[0].muted = true;", video) 
  • Как сделать частичный скриншот с Selenium WebDriver в python?
  • Как правильно использовать find_element_by_link_text (), чтобы не поднимать NoSuchElementException?
  • выбор iframe с использованием python selenium
  • Скребок Python - Невозможно получить требуемые данные от Flipkart
  • Именование файла при загрузке с помощью Selenium Webdriver
  • Параллельное выполнение Python с селеном
  • Можно ли скрыть браузер в Selenium RC?
  • Как разбирать элементы драйвера Selenium?
  • Python - лучший язык программирования в мире.