IndexError: list index out of range помогите исправить
import allure
from selenium.webdriver.chrome.webdriver import WebDriver
from selenium.webdriver.common.by import By
from selenium.webdriver.remote.webelement import WebElement
from selenium.webdriver.support.wait import WebDriverWait
from typing import List
# import driver
def test_1(driver):
# driver = WebDriver(executable_path='C://Users//vroma//Desktop//automation//chromedriver_win32//chromedriver.exe')
driver.get('https://ya.ru')
search_input = driver.find_element_by_xpath('//input[@id="text"]')
search_button = driver.find_element_by_xpath('//div[@class="search2__button"]//button[@type="submit"]')
search_input.send_keys('uk.zhk.online')
search_button.click()
def check_results_count(driver):
inner_search_results = driver.find_elements_by_xpath('//li[@class="serp-item"]')
return len(inner_search_results) >= 10
with allure.step('количество результатов поиска'):
WebDriverWait(driver, 1, 0.5).until(check_results_count, 'количество результатов поиска')
with allure.step('переходим по ссылке результата'):
search_results = driver.find_elements_by_xpath('//li[@class="serp-item"]')
link = search_results[0].find_element_by_xpath('.//h2/a')
link.click()
def test_2(driver):
# driver = WebDriver(executable_path='C://Users//vroma//Desktop//automation//chromedriver_win32//chromedriver.exe')
# driver.get('https://ya.ru')
search_input = driver.find_elements_by_css_selector('.form-group:nth-child(2) > .form-control')
# (By.CSS_SELECTOR, ".form-group:nth-child(2) > .form-control")
# search_input.send_keys('+7 (911) 111-11-11') # .send_keys(Keys.Enter)
search_input[0].send_keys('+7 (911) 111-11-11')
search_button = driver.find_elements_by_css_selector('.main-block')
search_button.click()
search_input = driver.find_element_by_css_selector('.form-group:nth-child(1) > .form-control')
search_input[1].send_keys('qazwsx123')
# search_input.send_keys('qazwsx123')
search_input.send_keys_by_css_selector('.btn-signin')
driver = WebDriver(executable_path='C://Users//vroma//Desktop//automation//chromedriver_win32//chromedriver.exe')
test_1(driver)
test_2(driver)
=========================================
выдается search_input[0].send_keys('+7 (911) 111-11-11') IndexError: list index out of range
Ответы (1 шт):
Автор решения: Viks Askin
→ Ссылка
надо было find_element без s, то есть
search_input = driver.find_element_by_css_selector('.form-group:nth-child(2) > .form-control').send_keys(
'+7 (911) 111-11-11')