Парсинг со всех страниц, а не с одной

вот решил сделать парсер который будет собирать мне данные о товаре, но не могу понять как сделать прокрутку страниц что бы парсило не с одной страницы, а со всех, как это можно было бы реализовать?

import time 
import pandas as pd
from selenium.webdriver import Chrome
from datetime import datetime


webdriver = r"C:\Users\К.Бояр (Второй)\source\repos\RozetaParcer\chromedriver.exe"

driver = Chrome(webdriver)
driver.implicitly_wait(10)
driver.get("https://rozetka.com.ua/search/?producer=gazer&seller=rozetka&text=Gazer")

total = []
items = driver.find_elements_by_css_selector(".goods-tile.ng-star-inserted")
cur_date = datetime.now().strftime("%d_%m_%Y")
for item in items:
    t_name = item.find_element_by_css_selector('.goods-tile__title').text
    t_price = item.find_element_by_css_selector('.goods-tile__price-value').text
    t_nal = item.find_element_by_css_selector('.goods-tile__availability').text    
    row = cur_date, t_name, t_price, t_nal
    total.append(row)

driver.close()
    
df = pd.DataFrame(total, columns=['Date','Name', 'Price', 'Nal'])
df.to_csv(f'Rozetka_parcer_{cur_date}.csv')

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

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

Если нужно спарсить количество страничек на сайте по запросу:

  1. Парсить все элементы с классом:

    class="pagination__item ng-star-inserted"
    
  2. Затем выбирать последний элемент и получаете атрибут href, будет примерно так:

    href="/search/?page=13&producer=gazer&seller=rozetka&text=Gazer"
    
  3. Забираете значение page выше и в цикле проходишься по всем страницам:

    for p in range(1, page+1):
     driver.get(f"https://rozetka.com.ua/search/?page={p}&producer=gazer&seller=rozetka&text=Gazer")
    
  4. Дальше, используете свой код в цикле и сохраняете результат куда нужно. Можно перед циклом создать словарь, куда будете ложить ключом название товара и значением передавать словарь со всей информацией.

→ Ссылка
Автор решения: Zombotron

Вам не нужно грузить саму страницу. На ней толком ничего нету. Открываете консоль браузера и смотрите xhr запросы. Ищете тот, в котором запрашиваются и получены нужные вам данные.

В конкретно приведенном вами примере это:

https://search.rozetka.com.ua/search/api/v6/?front-type=xl&country=UA&lang=ru&producer=gazer&seller=rozetka&text=Gazer

https://search.rozetka.com.ua/search/api/v6/?front-type=xl&country=UA&lang=ru&producer=gazer&seller=rozetka&page=2&text=Gazer

...

В ответе json. Нужное вам:

введите сюда описание изображения

Как оно будет грузиться вне браузера я не знаю, пробуйте. Возможно придется как-то изощряться, а может просто ключик для апи получить.

→ Ссылка