Как осуществить переход на следующий элемент пагинации, если не меняется ссылка при переходе на сайте?

Пишу парсер для вот этого сайта: https://eldorado.ua/search/?q=Gazer

И на этом сайте при переходе на следующую страницу не меняется url, и программе не удается найти элемент "Следующая страница", как быть?

Вот код парсера:

https://dpaste.org/4FXW

Код элемента пагинации:

<li class="page-i"><div class="back_pagin" id="goods_back"><img class="to-left" src="/img/icons/icon-pagination-left.svg" alt="icon-pagination-left"></div></li>
pages .page-i:last-child {
    border: none;
}
.pages .page-i {
    width: 40px;
    height: 100%;
    margin: 0 4px;
}
ul:not(.browser-default) li {
    list-style-type: none;
}
.pages>div, .pages li {
    cursor: pointer;
    display: inline-block;
    color: #484b4c;
    font-size: 16px;
    vertical-align: top;
}


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

Автор решения: Alexandr

Пагинация происходит не по ссылкам, а с помощью API. Вы нажимаете на номер страницы, срабатывает скрипт с запросом и вам сервер отправляет товары. Как вы заметили, то никакого перехода не происходит, так как страница не перезагружается, просто скрипт вам отрисовывает новые данные.

Ссылка на API

https://api.eldorado.ua/v1/goods_attributes_values_output/?conditions=goods_cat_id=0&good_id=1208354%20%20%20%20&columns=id,parent_id,mpath,icon,name,name_ua,descr,descr_ua,order_num&lang=ru'

Где в параметрах указан good_id , это первый товар из найденых. Изучите эти запросы с помощью отладчика во вкладке 'Сеть' для нахождения нужной информации

Если не хотите работать с API, можете воспользоваться Selenium и там имитировать нажатие на пагинацию

Пример кода перехода по пагинации:

links = driver.find_elements_by_class_name('page-link') #берем все кнопки пагинации

for link in links:# пробегаем по ним и парсим контент
    link.click()
    #тут пишите парсер
→ Ссылка