메인 콘텐츠로 건너뛰기

데이터 중복 제거: 원인, 해결 방법 및 예방

어제 업데이트함

데이터 중복은 웹 스크래핑 작업에서 자주 발생하는 문제로, 특히 동적이거나 자주 업데이트되는 웹사이트를 다룰 때 흔합니다.
이 튜토리얼에서는 중복이 발생하는 원인, 해결 방법, 그리고 Octoparse 작업에서 중복을 예방하는 전략을 다룹니다.


데이터 중복의 원인

작업 설정 문제

  • 실행 전 데이터 미삭제
    같은 작업을 여러 번 실행하면서 이전에 수집된 데이터를 삭제하지 않으면 결과가 중복될 수 있습니다. Octoparse는 실행할 때마다 데이터를 누적 저장하므로 새 작업 실행 전에는 반드시 데이터셋을 비워야 합니다.

  • 웹사이트 탐색 설정 오류
    일부 웹사이트는 "더 보기" 버튼과 같은 방식으로 스크롤하면서 추가 콘텐츠를 표시합니다. 이런 버튼 처리가 제대로 설정되지 않으면 스크래퍼가 초기 로드된 데이터를 반복적으로 수집할 수 있습니다.

동적 웹사이트 업데이트

일부 웹사이트는 스크래핑 도중 콘텐츠나 순서를 변경합니다(예: 상품 목록, 채용 공고 등).
이 경우 동일한 항목이 다른 페이지나 위치에서 다시 나타나 중복 항목이 생길 수 있습니다.

예시:

  • 원본 사이트에 반복된 항목이 존재함

  • 스크래핑 작업이 동일 데이터를 여러 번 캡처함


Octoparse는 두 가지 방식으로 중복 데이터를 제거합니다. 이 도구들은 위에서 설명한 중복 원인을 해결하도록 설계되었습니다.

1. 전체 행 기준으로 중복 제거 (기본값)

모든 필드의 값이 완전히 동일한 행만 중복으로 간주합니다.

적합한 경우:

완전히 동일한 데이터만 제거하고 싶을 때

예시:

라인

필드1

필드2

필드3

결과

#1

A

B

C

유지

#2

X

Y

Z

유지

#3

A

B

C

제거 (1번 행과 동일)

작동 방식:

  • 중복된 행 중에 첫 번째 행은 유지

  • 이후 동일한 행은 제거

2. 선택된 필드 기준으로 중복 제거 (v8.1.16 이후)

지정할 필드만 선택하여 중복 여부를 비교한 다음 중복으로 간주한 행을 제거할 수 있습니다.

적합한 경우:

  • 고유 식별자(예: 상품 ID, URL)를 기준으로 중복 제거할 때

  • 다른 필드(예: 가격, 리뷰)가 달라질 수 있는 경우

예시 1: 단일 필드 기준 중복 제거

🔹선택 필드: 필드 2

라인

필드1

필드2

필드3

결과

#1

A

B

C

유지

#2

X

B

Z

제거 (필드 2 중복)

#3

P

Q

R

유지

예시 2: 다중 필드 기준 중복 제거

🔹선택 필드: 필드 3 + 필드 4

라인

필드3

필드4

결과

#1

C

D

유지

#2

E

F

유지

#3

C

D

제거 (1번 행과 동일)


사용자 지정 중복 제거 설정 방법

  1. 작업을 구성하고 데이터 필드를 지정합니다.

  2. 데이터 미리보기 화면에서 ⚙️(기어 아이콘)을 클릭합니다.

  3. 비교할 필드를 선택합니다.

  4. 적용을 클릭해 설정을 저장합니다.


주의 사항

클라우드 실행 시

  • 중복 제거는 동일한 설정이 적용된 같은 배치 내에서만 유효합니다.

  • 설정을 변경하면 이전 배치와 비교되지 않습니다.

  • 클라우드에서 동일한 작업을 새 데이터 없이 여러 번 실행할 경우, 이전에 수집된 항목이 다시 결과에 나타나 중복이 발생할 수 있습니다.
    이런 중복을 방지하려면 작업을 재실행하기 전에 반드시 데이터를 삭제해야 합니다.

워크플로우 예시:

  1. 1차 실행: 필드 1 기준 중복 제거 → 배치 A

  2. 2차 실행: 필드 2 기준 중복 제거 → 배치 B (A와 비교되지 않음)

  3. 3차 실행: 필드 1로 복귀 → 배치 C (A와 비교됨, B는 제외)


프로 팁

🔹 중복 제거 시 고유 식별자(예: 상품 ID, URL)를 사용하는 것이 가장 안정적입니다.
🔹 클라우드 작업에서는 한 가지 중복 제거 설정을 유지하세요.
🔹 일부 중복만 유지하고 싶다면 전체 행 중복 제거 대신 필드 선택 방식을 사용하세요.
🔹 동적 웹사이트의 경우 설정을 충분히 테스트하여 중복이 없는지 확인하세요.
🔹 사이트 구조 변경 시 스크래퍼 설정을 주기적으로 업데이트하세요.
🔹 상품, 채용 공고 등 일반적인 케이스는 템플릿 갤러리의 검증된 템플릿을 활용하세요.
🔹 작업을 재실행하기 전에는 항상 데이터를 삭제하여 중복을 방지하세요.

중복 제거 설정을 세밀하게 조정하면 수동 정리 없이도 깨끗하고 정확한 데이터셋을 유지할 수 있습니다! 🚀

답변이 도움되었나요?