전자상거래(이커머스) 웹사이트에서 상품 정보를 수집할 때는 검색 결과 페이지와 개별 상품 상세 페이지 두 곳 모두에서 데이터를 추출해야 하는 경우가 많습니다. 이럴 때 수집은 어떻게 해야 할까요?
따라 본 튜토리얼에서는 이러한 작업을 수행할 수 있도록 사용자 지정 작업을 만드는 방법을 단계별로 안내해 드립니다.
먼저, Octoparse 블로그 정보를 수집하고 싶다고 가정해 봅시다.
샘플 URL: https://www.octoparse.com/blog
리스트 페이지:
상세 페이지:
이 경우 먼저 리스트 페이지에서 블로그의 기본 정보를 추출한 뒤,
각 블로그의 상세 페이지로 이동하여 전체 콘텐츠를 가져오는 방식으로 진행합니다.
이 목표를 달성하기 위해 사용할 수 있는 방법은 두 가지가 있습니다.
1. 자동 인식 기능으로 워크플로우 만들기
Octoparse 8.7의 스마트 인식 기능은 이전보다 훨씬 강력해졌습니다.
이 기능을 사용하면 웹페이지를 자동으로 분석하여 워크플로우를 손쉽게 생성할 수 있습니다.
팁 패널에서 웹페이지 데이터 자동 인식을 클릭하고 완료될 때까지 기다립니다.
인식된 결과 중 원하는 데이터 필드가 포함된 결과(이 예에서는 결과1)를 선택합니다.
데이터 미리보기 섹션에서 추출할 데이터 필드를 확인하고 불필요한 필드를 삭제합니다.
보통 검색 결과가 여러 페이지에서 나뉘어 표시되는 경우,
페이지 넘기기 기능을 설정하여 각 페이지의 데이터를 빠짐없이 수집할 수 있습니다.
페이지 넘기기:
여러 페이지에서 데이터 수집이 필요하면 페이지 넘기기 기능을 활성화합니다. “체크” 버튼을 눌러 Octoparse가 ‘다음 페이지’ 버튼을 올바르게 인식했는지 확인합니다.페이지 스크룰 추가:
예시 웹페이지는 스크롤을 내려야 모든 콘텐츠가 로드되는 구성이 아니므로 여기서 “페이지 스크롤 추가” 옵션의 체크를 해제하고 워크플로우 생성하기를 클릭합니다.
이제 Octoparse가 검색 결과 페이지에서 데이터를 추출할 수 있도록 워크플로우에 루프 아이템을 자동으로 생성했습니다.
다음 단계에서는 각 항목의 상세 페이지로 이동하는 단계를 추가하겠습니다.
상세 페이지 URL 선택하기를 클릭합니다.
확인을 클릭합니다.
이제 Octoparse가 자동으로 상세 페이지로 이동합니다. 이 페이지에서 원하는 정보를 추출할 수 있습니다.
추출할 웹 요소를 클릭합니다.
팁 패널에서 텍스트를 선택합니다.
데이터 미리보기 섹션에서 필드 타이틀을 더블클릭하여 데이터 필드 이름을 수정할 수 있습니다.
모든 설정이 완료되면 저장 후 실행을 클릭합니다.
작업을 실행할 모드를 선택하면 됩니다.
샘플 추출 결과가 아래와 같습니다:
2. 수동으로 워크플로우 만들기
자동 인식 기능이 일부 웹사이트에서는 제대로 작동되지 않을 때 우리가 수동으로 워크플로우를 생성할 수도 있습니다. 아래 단계에 따라 수동으로 진행하는 방법을 배워보세요.
리스트 페이지에서 첫 번째 항목 선택
두 번째 항목 이어서 선택
팁 패널에서 텍스트 클릭
지금 루프 아이템이 워크플로우에 추가되었지만 하나의 필드만 추출되는데요. 여기서 추가로 필요한 데이터 필드를 직접 지정해줄 수 있습니다.
결과 페이지에서 추출하고 싶은 정보 클릭
팁 패널에서 텍스트 선택
위 과정을 반복하여 필요한 모든 데이터 필드 추가
다음으로, 제목(URL)을 클릭하여 상세 페이지로 이동하는 단계를 만들어야 합니다.
리스트 페이지에서 첫 번째 제목 선택
요소 클릭하기 클릭
상세 페이지로 이동한 후 상세 정보를 추출할 수 있습니다.
추출할 웹 요소 클릭
팁 패널에서 텍스트 클릭
데이터 미리보기 섹션에서 필드 이름을 더블클릭하여 수정
루프 아이템을 클릭하여 다시 리스트 페이지로 이동
‘다음 페이지’ 버튼을 클릭한 뒤, ‘루프 클릭’을 선택하여 페이지 넘기기 단계 추가
이렇게 하면 작업이 모든 페이지를 순차적으로 진입하여 데이터를 추출합니다.
최종 워크플로우는 다음과 같은 형태로 옆에서 보여줍니다.
저장 후 실행을 클릭합니다.
작업 실행 모드를 선택하면 됩니다.
샘플 추출 결과가 아래와 같습니다:
참고:
웹사이트가 무한 스크롤로 추가 항목을 불러오는 구조라면 워크플로우에 직접 스크롤 단계를 추가해야 합니다.
아래 이미지와 같이 “+” 버튼을 클릭 → 루프 선택
그 다음은 루프 모드에서 스크룰로 변경 → 적용하면 됩니다.