#python #selenium #video #iframe #href
Вопрос:
У меня проблема с желанием получить содержимое ссылки, в которой есть видео. Я должен войти на страницу и нажать на видео, ссылка появится на странице, как только я нажму на видео, пока я не нажму на видео, которое я получу, но тогда я не смогу перейти к ссылке.
Это код страницы
Код длиннее, и href находится внутри iframe, но, честно говоря, я не знаю, как скопировать текст из html, поэтому я отправил изображение .. Я хочу получить содержимое ссылки, как показано на iagen, но оно туда не попало. Это содержимое появляется, когда я нажимаю на видео. Далее я оставляю свой код
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
import time, re, requests
algo = "Player YouTube"
driver.get("https://www.supertelevisionhd.net/dragon-ball-z-en-vivo/")
time.sleep(1)
driver.switch_to.frame(driver.find_element_by_xpath("//*[@id='post-100']/div/center/iframe"))
time.sleep(1)
click1 = driver.find_element_by_xpath('//*[@id="{}"]'.format(algo))
time.sleep(5)
click1.click()
WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.XPATH, '/html/body/iframe')))
time.sleep(5)
enlace = WebDriverWait(driver, 10).until(EC.element_to_be_selected((By.CLASS_NAME,'html5-vpl_title_l vpl-antialiased')))
print(enlace)
Это ошибка, которую я получаю
> File "C:UsersNicoDesktoppruebas driver.py", line 36, in <module>
> enlace = WebDriverWait(driver,
> 10).until(EC.element_to_be_selected((By.CLASS_NAME,'html5-vpl_title_l
> vpl-antialiased'))) File
> "C:Python39libsite-packagesseleniumwebdriversupportwait.py",
> line 71, in until value = method(self._driver) File
> "C:Python39libsite-packagesseleniumwebdriversupportexpected_conditions.py",
> line 329, in call return self.element.is_selected() AttributeError:
> 'tuple' object has no attribute 'is_selected'
Я был бы признателен за любую помощь. Я повторяю, что я хочу получить содержимое href, то есть то, что http: //ok.ru говорит …
Спасибо
Комментарии:
1. где это
is_selected
в вашем коде ? Я этого не вижу.2. Извините, я плохо знаю английский, я не понимаю вашего вопроса
Ответ №1:
Ошибка заключается в том, что вы передаете a tuple
вместо an element
в последней строке перед.
Измените последнюю строку перед в своем коде на эту:
enlace = WebDriverWait(driver, 10).until(EC.element_to_be_selected(By.CLASS_NAME,'html5-vpl_title_l vpl-antialiased'))
Вы добавили дополнительный парантез () и, следовательно, ошибку.
Комментарии:
1. Теперь я получаю эту ошибку: Трассировка (последний последний вызов): Файл «C:UsersxxxDesktopPRUEBASELENIUMPRUEBASpruebas driver.py», строка 45, в <модуле> enlace = WebDriverWait(драйвер, 10).до тех пор, пока(EC.element_to_be_selected(По.CLASS_NAME,»html5-vpl_title_l vpl-сглажен»)) Ошибка типа: __init__() принимает 2 позиционных аргумента, но было дано 3