selenium.common.exceptions.StaleElementReferenceException Selenium python

Здраствуйте! Есть скрипт, который парсит названия карт. Если в названии есть какой-нибудь английский символ, то он заходит в эту карту и берет оттуда автора, ссылку на профиль автора и дискорд (если есть) и создает экземпляр класса MapMaker и добавляет его в множество mapmakers. Если в названии карты нет английского символа, то скрипт заходит в эту карту и проверяет на наличие английского символа имя автора. Если есть - создает экземпляр класса MapMaker, добавляет его в множество mapmakers и возвращается обратно на страницу с картами. Но появляется ошибка

selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: stale element not found.

Как от нее избавиться?

Код:

required_letters = 'qwertyuiopasdfghjklzxcvbnm'

maps_names = driver.find_elements(By.CLASS_NAME, 'title')
print(len(maps_names))


class MapMaker:
    def __init__(self, username, social_media_link, link_to_profile):
        self.username = username
        self.social_media_link = social_media_link
        self.link_to_profile = link_to_profile


mapmakers = set()


i = 0
for map_name in maps_names:
    for required_letter in required_letters:
        for letter in maps_names[i].text:
            if letter == required_letter:
                maps_names[i].click()
                try:
                    author_name = driver.find_element(By.XPATH, '//*[@id="app"]/div/main/div/div/div/div[1]/div[1]/dl/dd[1]/div/a/span')
                    profile_link = driver.find_element(By.XPATH, '//*[@id="app"]/div/main/div/div/div/div[1]/div[1]/dl/dd[1]/div/a')
                    social_media = driver.find_element(By.XPATH, '//*[@id="app"]/div/main/div/div/div/div[1]/div[1]/dl/dd[3]/a/span')
                except NoSuchElementException:
                    pass

                mapmaker = MapMaker(author_name, social_media, profile_link)
                mapmakers.add(mapmaker)

                driver.back()
                i += 1
            else:
                try:
                    maps_names[i].click()
                except StaleElementReferenceException:
                    pass
                try:
                    author_name = driver.find_element(By.XPATH, '//*[@id="app"]/div/main/div/div/div/div[1]/div[1]/dl/dd[1]/div/a/span').text
                    profile_link = driver.find_element(By.XPATH, '//*[@id="app"]/div/main/div/div/div/div[1]/div[1]/dl/dd[1]/div/a').get_attribute('href')
                    social_media = driver.find_element(By.XPATH, '//*[@id="app"]/div/main/div/div/div/div[1]/div[1]/dl/dd[3]/a/span').text
                    # description = driver.find_element(By.CLASS_NAME, '//*[@id="app"]/div/main/div/div/div/div[1]/div[1]/dl/dd[4]/span')
                except NoSuchElementException:
                    pass

                for letter in author_name:
                    if letter == required_letter:
                        mapmaker = MapMaker(author_name, social_media, profile_link)
                        mapmakers.add(mapmaker)

                        driver.back()
                        i += 1

                # if description.text == '':
                #     for letter in description.text:
                #         if letter == required_letter:
                #             mapmaker = MapMaker(author_name, social_media, profile_link)
                #             mapmakers.add(mapmaker)


print(mapmakers)

Ответы (0 шт):