Причин в целом может быть много, как с прогрузкой, так и с сменой идентификатора блока или в целом проблемы могут быть с его существованием.
Первый вариант будет искать элемент "Показать еще" заново внутри Вашего цикла с помощью find_element_by_xpath
и пытаться нажать на него.
Вариант №1:
while True:
try:
element = driver.find_element_by_xpath("//*[@id='__next']/div/main/section/div[2]/div/div/section/div[2]/div[3]/div/div[1]/div[2]/button")
element.click()
time.sleep(1)
except:
break
Второй вариант будет проверять существует ли Ваш элемент "Показать его" вообще, с использованием find_elements_by_xpath
а уже после будет совершать нажатие..
Вариант №2:
while True:
elements = driver.find_elements_by_xpath("//*[@id='__next']/div/main/section/div[2]/div/div/section/div[2]/div[3]/div/div[1]/div[2]/button")
if len(elements) > 0:
element = elements[0]
element.click()
time.sleep(1)
else:
break
Третий вариант будет немного сумбурным, но тоже имеет место быть. Здесь поиск Вашего элемента "Показать еще" будет происходить в каждом новом блоке. А сам поиск будет производиться по тексту.
Вариант №3:
while True:
try:
button = driver.find_element(By.XPATH, "//button[contains(text(), 'Показать еще')]")
driver.execute_script("arguments[0].scrollIntoView(true);", button)
button.click()
time.sleep(1)
except NoSuchElementException:
break
Скорее всего один из этих вариантов должен решить Вашу проблему, во всяком случае, - есть полигон для экспериментов, но в случае чего - напишите комментарий. Или дополните вопрос, чтобы Вам могли оказать более конкретную помощь :)