Я новичок в Selenium (использую Python), и я пытался создать простое приложение, которое могло бы войти на сайт моей газеты, но я столкнулся с проблемами при вводе поля входа в систему, которое находится в другом фрейме. Я посмотрел вокруг и нашел несколько ответов, которые показывают, как выбрать другой кадр. Тем не менее, я сделал это, но когда я пытаюсь отправить текст в поле для входа, ничего не происходит.
Вот мой код:
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
url = 'http://www.valor.com.br'
path_to_chromedriver = 'chromedriver'
browser = webdriver.Chrome(executable_path = path_to_chromedriver)
browser.get(url)
browser.find_element_by_id("login-valor").click()
wait = WebDriverWait(browser,10)
WebEl = wait.until(EC.presence_of_element_located((By.ID,'cadunLoginModal')))
browser.switch_to_frame(browser.find_element_by_id("cadunLoginModal").find_element_by_tag_name("iframe"))
browser.find_element_by_id("login").send_keys("teste")
Я пытаюсь отправить 'teste' в поле для входа, но ничего не появляется.
Если я заменю последнюю строку попыткой щелчка ...
browser.find_element_by_id("login").click()
... Я получаю следующее сообщение:
File "/usr/local/lib/python3.7/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Element <iframe src="https://login.globo.com/login/6668?url=&tam=WIDGET" style="height: 100%; width: 100%;" cd_frame_id_="4bed04b195abe0173e2400a792245d31"></iframe> is not clickable at point (599, 298). Other element would receive the click: <iframe src="https://login.globo.com/login/6668?url=&tam=WIDGET" style="height: 100%; width: 100%;"></iframe>
(Session info: chrome=68.0.3440.106)
(Driver info: chromedriver=2.41.578706 (5f725d1b4f0a4acbf5259df887244095596231db),platform=Mac OS X 10.13.6 x86_64)
Похоже, что поле не было видно, но это так.
Не могли бы вы помочь пролить свет на этот вопрос? Большое спасибо.