Я создаю сценарий для создания плейлиста YouTube с селеном, но я застрял здесь, я перепробовал много способов, но все они не работают!Кто-нибудь может мне помочь?спасибо
<input type="text" class="Mf-jm-Qc-qb d-Rb" aria-label="Search terms" style="width: 325px;">
Я пытался:
1
driver.find_element_by_xpath("//input[@class='Mf-jm-Qc-qb d-Rb']").send_keys("https://www.youtube.com/watch?v=NliYy7iqh-U")
2
driver.find_element_by_xpath("//input[@type='text']").send_keys("https://www.youtube.com/watch?v=NliYy7iqh-U")
3
driver.find_element_by_css_selector(".Mf-jm-Qc-qb").send_keys("https://www.youtube.com/watch?v=NliYy7iqh-U")
4
driver.find_element_by_class_name("Mf-jm-Qc-qb d-Rb").send_keys("https://www.youtube.com/watch?v=NliYy7iqh-U")
Элемент выглядит как динамический элемент, поэтому вам нужно WebDriverWait для требуемого elementToBeClickable , и вы можете использовать любое из следующих решений:
Использование CSS_SELECTOR:
CSS_SELECTOR
WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input[aria-label='Search terms'][type='text']"))).send_keys("https://www.youtube.com/watch?v=NliYy7iqh-U")
Использование XPATH:
XPATH
WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@aria-label='Search terms' and @type='text']"))).send_keys("https://www.youtube.com/watch?v=NliYy7iqh-U")
Примечание : Вы должны добавить следующий импорт:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC