Python Пока L oop пропускается, что приводит к ошибке - PullRequest
0 голосов
/ 12 апреля 2020

У меня проблемы с селеном, правильно выполняющим код. Этот точный код работал раньше, но неожиданно остановился. Этот код является частью более крупной функции с именем collect_data (), и эта функция вызывается после открытия драйвера. Изображение кода

button = driver.find_element_by_xpath('//*[@id="challenge-game-router"]/main/section/div[1]/form/button')
button.click()
while not driver.find_elements_by_xpath("//*[text()='Scoreboard']"): #Not completed 
    page_num= data_qus % 2
    page_num_reverse= (data_qus+1) % 2 
    while not driver.find_elements_by_xpath("//*[@id='challenge-game-router']/main/div[2]/div[1]"): #While can't press an option 
        dummy+=1   
        print("A")                                                                                  
    button = driver.find_element_by_xpath("//*[@id='challenge-game-router']/main/div[2]/div[1]")
    button.click() 
    try: 
        button = driver.find_element_by_xpath('//div[@class=\'question-choice-content__IconWrapper-z7z2ef-0 '+page_type[page_num]+"\']/..") #The check mark(that indicates the correct answer) has two codes. It changes from question to question
    except: 
        button = driver.find_element_by_xpath('//div[@class=\'question-choice-content__IconWrapper-z7z2ef-0 '+page_type[page_num_reverse]+"\']/..")
    data_right_answers.append('"'+button.text+'"') 

У меня проблема в том, что while not driver.find_elements_by_xpath("//*[@id='challenge-game-router']/main/div[2]/div[1]"): пропускается. Я знаю, что элемент не найден, поэтому не имеет смысла, почему это происходит. Этот пропуск l oop вызывает мою ОШИБКУ: Unable to locate element: //div[@class='question-choice-content__IconWrapper-z7z2ef-0 gmtpmh']/.., которая является моим Except путем элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...