무한 스크롤(infinite scrolling 또는 endless scrolling)은 자바스크립트(JavaScript)나 AJAX를 사용하는 웹사이트에서 사용자가 페이지 아래로 스크롤할 때마다 새로운 콘텐츠를 동적으로 불러오는 방식입니다.
보통 웹페이지의 스크롤바를 맨 아래로 내리면 "로딩" 표시가 나타나고 이때 곧 새로운 콘텐츠가 추가로 로드됩니다.
이처럼 사용자가 직접 페이지를 아래로 스크롤하는 것처럼 Octoparse도 적절한 설정을 통해 같은 방식으로 페이지를 스크롤할 수 있습니다. 사용자는 단지 어떤 페이지를 스크롤할지, 몇 번 스크롤할지, 그리고 각 스크롤 간의 시간 간격만 설정해 주면 됩니다.
이 튜토리얼에서는 Octoparse에서 무한 스크롤 페이지를 처리하는 방법을 소개합니다.
본 튜토리얼에서는 아래 URL을 예시로 사용하였습니다.
참고:
이 튜토리얼은 페이지 전체를 스크롤할 때 사용하는 방법입니다. 페이지의 특정 영역만 스크롤해야 하는 경우에는 부분 스크롤 - 웹 페이지의 특정 영역만 스크롤하기 튜토리얼을 참고하세요.
1) 자동 인식 기능으로 설정하기
[팁] 패널에서 [웹 페이지 데이터 자동 인식]을 선택합니다.
스크롤 설정을 수정합니다.
페이지 스크롤 추가 아래에서 편집을 클릭하고 스크롤 모드, 반복 횟수 및 대기 시간을 설정합니다. 그 다음 확인을 클릭하여 설정을 저장합니다.
팁: 1. 페이지 맨 끝까지 스크롤: 이 경우 Octoparse는 페이지 중간에서 멈추지 않고 바로 끝까지 스크롤합니다. 페이지가 맨 아래에 도달했을 때만 새 콘텐츠를 불러오는 경우에 유용합니다. 2. 한 화면에서 스크롤: Octoparse는 한 번에 한 화면씩만 스크롤합니다. 스크롤을 내릴 때마다 콘텐츠가 계속 로드되는 페이지에 적합합니다. (한 화면에서 스크롤은 모든 웹 사이트에 적용 가능하지만 페이지 맨 끝까지 스크롤은 일부 웹 사이트에서는 작동하지 않을 수 있습니다. 3. 반복에 스크롤 횟수를 입력합니다. 필요한 모든 데이터를 로드하기 위해 페이지를 수동으로 스크롤해 대략 몇 번 필요한지 미리 확인하는 것이 좋습니다. 4. 각 스크롤 사이의 대기 시간을 설정합니다. 페이지 로딩이 느린 경우 더 긴 대기 시간을 설정하는 것이 좋습니다. |
설정을 완료하면 워크플로우 생성을 클릭합니다.
아래와 같은 워크플로우를 볼 수 있습니다.
스크롤 페이지를 클릭하여 스크롤 설정을 확인하거나 수정할 수 있습니다.
참고:
충분한 스크롤 횟수와 각 스크롤 간의 적절한 간격을 꼭 설정하세요.
루프 아이템이 모든 요소를 제대로 찾는지 확인합니다.
루프 아이템의 설정으로 이동하여 모든 요소가 정확히 인식되었는지 확인합니다. 루프 모드가 가변 리스트로 설정되어 있는지, XPath가 정확한지 확인하세요.
2) 수동으로 무한 스크롤 설정하기
무한 스크롤을 수동으로 설정하는 방법은 두 가지가 있습니다.
a. 기존 단계에 스크롤 동작 추가
예: 웹 페이지로 이동 단계
웹 페이지로 이동 클릭
옵션에서 페이지 로딩 후 밑으로 스크롤 선택
페이지 맨 끝까지 스크롤 선택
적용 클릭
위의 방법과 동일한 방식으로 클릭 아이템 단계에도 스크롤 동작을 추가할 수 있습니다.
b. 새로 스크롤 루프 만들기
참고:
자세한 내용은 페이지 스크롤 설정 및 루프 아이템 튜토리얼 참고하세요.