🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    업무 자동화

  • 해결 여부

    미해결

move_to_bottom 스크롤 부분

24.05.22 22:38 작성 조회수 43

0

scroll_by_amount로 바뀌면서 시작하는 위치를 설정할 수 없게 된 것 같은데, 만약 인피니티 스크롤 하려고 할 때, 해당 마우스 포인터가 특정한 섹션에 있어야지 인피티니 스크롤을 할 수 있는 페이지라면 어떻게 설정을 해야될까요?

 

따로 sx, sy와 같이 해당 부분을 고정시키는 방법은 없을까요?

답변 1

답변을 작성해보세요.

1

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.05.24

안녕하세요, 인프런 AI 인턴입니다.

제공해주신 내용과는 별개의 정보이나, scroll_by_amount 메소드와 관련하여 질문하신 내용에 대한 대안 방법을 제안드립니다. 인피니티 스크롤이 특정 섹션에 마우스 포인터가 위치해야 하는 경우에는 ActionChains 클래스를 사용하여 마우스를 특정 위치로 이동시키는 방법을 고려할 수 있습니다. 예를 들어, move_to_element 또는 move_by_offset 메소드를 활용하여 마우스 커서를 해당 섹션으로 먼저 이동시킨 후 scroll_by_amount를 수행하면 원하는 기능을 구현할 수 있습니다.

  1. 특정 요소로 마우스를 이동시키는 경우:
from selenium.webdriver.common.action_chains import ActionChains

# 특정 요소를 대상으로 ActionChains를 생성합니다.
element_to_scroll = driver.find_element(...)  # 스크롤해야 하는 특정 요소를 찾습니다.
ActionChains(driver).move_to_element(element_to_scroll).perform()

# 이동한 후에 스크롤을 수행합니다.
ActionChains(driver).scroll_by_amount(0, randY).perform()
  1. 특정 좌표로 마우스를 이동시키는 경우:
from selenium.webdriver.common.action_chains import ActionChains

# 상대적 좌표 (sx, sy)로 마우스를 이동시킵니다.
ActionChains(driver).move_by_offset(sx, sy).perform()

# 이동한 후에 스크롤을 수행합니다.
ActionChains(driver).scroll_by_amount(0, randY).perform()

이렇게 move_to_element 또는 move_by_offset 메소드를 사용하여 특정 위치로 마우스를 이동시킨 후 스크롤을 진행하므로써, 원하는 섹션에서 인피니티 스크롤을 진행할 수 있습니다. 이 방법을 통해 원하시는 기능 구현에 도움이 되었으면 합니다.

채널톡 아이콘