Как войти во всплывающие окна? - PullRequest
0 голосов
/ 10 апреля 2019

я пытаюсь зайти на этот сайт с помощью selenium -python но я не могу. Я прочитал другой вопрос, но я не получил его. как мне это сделать? это моя ошибка: введите описание изображения здесь это мой код:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
driver = webdriver.Chrome()
driver.get("https://en.gamefa.com/")
driver.find_element_by_name("loginform").submit()
driver.find_element_by_class_name("ModalBoxBody")#.submit()
time.sleep(10)
elem1 = driver.find_element_by_name("log")
elem1.send_keys("mehrdad78")
elem2 = driver.find_element_by_name("pwd")
elem2.send_keys("mehrdad78").submit()

1 Ответ

0 голосов
/ 10 апреля 2019

Во-первых, Ваш скриншот не дает нам достаточно данных об ошибке. Опубликуйте трассировку стека ошибок, которая указывает на ваш код.

Во-вторых, все элементы имеют идентификатор. Было бы лучше использовать id для поиска элементов.

Третий , Click работает. Отправить не работает на кнопках. использование submit для элемента вне формы должно вызвать исключение.

В-четвертых, Используйте явное ожидание вместо сна.

Попробуйте это

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By

driver.get("https://en.gamefa.com/")

driver.find_element_by_id("login-form").click()

elem1 = WebDriverWait(driver,5).until(EC.visibility_of_element_located((By.ID, "user_login3")).send_keys("mehrdad78")
elem2 = driver.find_element_by_id("user_pass3").send_keys("mehrdad78")
elem3 = driver.find_element_by_id("wp-submit3").submit()
...