есть проблема, я объясню сценарий кода.
Сначала заходим на главную страницу, потом цикл for, который идет на 1 страницу, пролистывает и парсит ссылки на фото (без прокрутки не парсит), потом переходит на 2 страницу, а там уже проблема. Он прокручивается вниз за секунду. А мне нужно чтобы он прокручивался постепенно, как на первой странице. Кидаю код:
driver.get(url=url)
n = 0
urla = driver.find_element(By.CLASS_NAME, "ipsPagination_pageJump").text
for page_number in range(int(urla.split()[3])):
page_number = page_number + 1
driver.get(url=url + f"page/{page_number}")
time.sleep(2)
imgs = driver.find_elements(By.CLASS_NAME, "cGalleryPatchwork_image")
for i in imgs:
n = n + 500
driver.execute_script(f"window.scrollTo(0, {n})")
time.sleep(0.2)
print(i.get_attribute("src"))
driver.quit()
Я знаю, что код очень плохой и не оптимизированный
прокручивать постепенно один элемент за другим вы должны использовать следующую execute_script
команду driver.execute_script("arguments[0].scrollIntoView(true);", i)
Код:
for page_number in range(int(urla.split()[3])):
page_number = page_number + 1
driver.get(url=url + f"page/{page_number}")
time.sleep(2)
imgs = driver.find_elements(By.CLASS_NAME, "cGalleryPatchwork_image")
for i in imgs:
#n = n + 500
#driver.execute_script(f"window.scrollTo(0, {n})")
driver.execute_script("arguments[0].scrollIntoView(true);", i)
time.sleep(0.2)
print(i.get_attribute("src"))