@rdmc

Как запустить видео в Cross Origin Iframe Selenium Python?

Есть скрипт для проверки видео
Передается ссылка на страницу сайта, в ней должно запускаться видео, но видео в Iframe с другого сайта, добавил --disable-web-security и --user-data-dir, все-равно не работает, хотя пользователя видит. Selenium не видит код запущенного iframe :(

Link - https://xn--h1agd3a1be.net/titles/1137/chto,-esli
Chrome - 94.0.4606.81
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time

def start_video(url):
    chrome_options = Options()
    chrome_options.add_argument("--user-data-dir=C:/Users/DANA/AppData/Local/Google/Chrome/User Data/Profile 2")
    chrome_options.add_argument("--disable-site-isolation-trials")
    chrome_options.add_argument("--disable-web-security")

    driver = webdriver.Chrome(
        chrome_options = chrome_options,
        executable_path = "C:/Users/DANA/Desktop/OpenServer/domains/localhost/python-films-bots/python/chromedriver/chromedriver.exe"
    )
    #driver.maximize_window()

    try:
        driver.get(url = url)
        time.sleep(2)
        #open video page
        driver.find_element_by_class_name("play-button").click()
        driver.implicitly_wait(5)
        time.sleep(5)
        #play player
        driver.execute_script('document.getElementsByTagName("video")[0].play')
    finally:
        driver.close()
        driver.quit()
  • Вопрос задан
  • 79 просмотров
Решения вопроса 1
ScriptKiddo
@ScriptKiddo
Selenium не видит код запущенного iframe :(


Чтобы получить доступ к элементам iframe - нужно сперва переключиться на него

iframe = driver.find_element_by_xpath("//iframe")
driver.switch_to.frame(iframe)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы