플러그인 및 코드 해석기를 사용하여 웹 스크래핑에 ChatGPT를 사용하는 방법
웹 스크래핑을 위한 ChatGPT 코드 인터프리터 및 플러그인 사용법에 대한 상세 안내입니다.
새로운 것을 만들어내는 데 관심이 없거나, 시장 경쟁 분석을 위한 정보 수집이 필요한 경우, 특정 웹사이트의 콘텐츠에 대한 접근이 필요한 여러 가지 이유가 있을 수 있습니다.
웹 스크래핑은 이러한 요구를 충족하는 과정입니다.
이 작업을 수행하는 방법은 다양합니다. 대규모 웹사이트를 전문적으로 스크래핑하기 위한 강력한 도구를 구독하거나, 자체적인 처리 시스템 구축이 필요할 수도 있습니다.
하지만 이러한 접근 방식은 특히 소량의 웹 페이지를 스크래핑하는 초보자에게는 비용이 많이 들고 시간이 오래 걸릴 수 있습니다.
웹 스크래핑을 위한 ChatGPT 소개
ChatGPT에 대한 소개는 불필요할 것입니다. 그렇죠?
간단히 말해 ChatGPT는 인간과 유사한 반응을 보이는 생성형 인공지능입니다. 채팅 인터페이스를 통해 역사적 사실 문의, 에세이 작성, 요약, 번역, 코딩 등 다양한 작업을 요청할 수 있습니다.
ChatGPT는 텍스트로 응답하지만, 다양한 기능을 강화하는 플러그인들이 존재합니다. 우리는 그중 하나를 사용할 것입니다. 또한 복잡한 웹페이지 구조나 활발한 스크래핑 방지 프로토콜이 적용된 웹사이트 스크래핑에는 코드 인터프리터를 활용할 것입니다.
ChatGPT는 무료 버전과 유료 버전으로 제공되지만, 웹 스크래퍼 플러그인이나 코드 인터프리터 엔진을 사용하려면 유료 구독(현재 월 20달러)이 필요합니다.
다음 섹션에서는 단계별 과정을 상세히 설명하겠습니다.
참고: 진행하기 전에 해당 웹사이트에서 콘텐츠 스크래핑을 허용하는지 반드시 확인하십시오. 허용되지 않은 경우, 법적 문제를 피하기 위해 해당 웹사이트 관리자에게 문의하여 허가를 받아야 합니다.
ChatGPT 플러그인을 이용한 웹 스크래핑
OpenAI 계정에 접속하여 GPT-4(유료 버전) 위에 마우스를 올리고, 플러그인을 클릭합니다.

그 후, '활성화된 플러그인 없음'을 클릭하고 아래로 스크롤하여 플러그인 스토어를 클릭합니다.

'활성화된 플러그인 없음' 대신 플러그인이 활성화되어 있다면, 플러그인 아이콘이 표시됩니다. 이 경우, 해당 아이콘을 클릭하여 드롭다운 메뉴를 열고, 하단의 플러그인 스토어를 클릭해야 합니다.
플러그인 스토어가 열리면, 'Scraper'를 검색하고 '설치'를 클릭합니다.

ChatGPT 인터페이스에서 이 플러그인을 선택합니다.

이 플러그인을 선택하면, 스크랩할 웹페이지 URL과 추출할 콘텐츠에 대한 정보를 ChatGPT에 제공해야 합니다.
몇몇 웹사이트에서 이 과정을 시연해 보았습니다. 다음은 그 예시입니다.
출판물 스크래핑
저희는 기술 관련 출판물이며, 이 예시를 위해 저희 홈페이지인 koreantech.org.com을 사용했습니다.
다음은 프롬프트입니다:
check this webpage: https://koreantech.org.com/ and prepare a table indicating the article title, author, publication date, and excerpt for the top 10 articles.

CSV 형식으로 데이터를 변환하라는 프롬프트를 추가하고, 생성된 텍스트 파일을 .csv 확장자로 저장한 후 MS Excel과 같은 스프레드시트 프로그램에서 열어볼 수도 있습니다.
거래 또는 쿠폰 웹페이지 스크래핑
저희 koreantech.org 거래 섹션은 최고의 기술 프로젝트 관련 제안들을 선별하여 제공하는 곳입니다. 모든 거래를 표 형식으로 추출해 보겠습니다.
Prepare a list of deals from this webpage: https://koreantech.org.com/deals/. present the result in a tabular format.

위키피디아 스크래핑
Summarize in tabular format the latest news from the "in the news" section from this wikipedia page: https://en.wikipedia.org/wiki/Main_Page

전자상거래 상점 스크래핑
마지막으로, 특정 필터를 적용한 Amazon.com 노트북 페이지 URL을 ChatGPT에 입력하여 스크래핑을 시도해 보았습니다. 다음은 그 결과입니다.

문제는 이러한 방식이 항상 통하는 것은 아니라는 것입니다. 웹사이트에는 스크래핑 방지 조치가 있는 경우가 많습니다. 이러한 경우, 업계 표준 스크래퍼 구독이 현실적인 옵션이 아니라면, 데이터를 얻기 위한 다른 방법을 찾아야 합니다.
다음 섹션에서는 이러한 대안 중 하나를 살펴보겠습니다.
ChatGPT 코드 인터프리터를 이용한 웹 스크래핑
코드 인터프리터는 프로그래밍 관련 작업을 처리하기 위해 새로 출시된 ChatGPT 엔진입니다. 기본 엔진은 텍스트 응답에 중점을 두지만, 코드 인터프리터는 출력 시각화, 코드 구문 분석, 디버깅 및 실행, 소프트웨어 바이너리와의 통합 등 더 광범위한 프로그래밍 중심 작업을 지원합니다.

이 과정에서는 소스 HTML을 다운로드하여 ChatGPT 코드 인터프리터에 업로드한 후 스크래핑을 진행합니다.
데이터 추출을 위해 다음 페이지를 사용했습니다.

먼저 웹페이지를 HTML 파일로 저장합니다. 해당 웹페이지로 이동하여 Ctrl+S를 누릅니다.

이제 스크랩할 파일이 준비되었습니다. 프롬프트를 살펴보겠습니다.

텍스트 프롬프트 외에도, 스크래핑 속도를 높이기 위해 샘플 요소들을 제공한 것을 볼 수 있습니다. Amazon 웹페이지 구조는 복잡하기 때문에 이러한 샘플이 없으면 스크래핑 시도가 실패하거나 아무 결과도 얻을 수 없을 수 있습니다.
이러한 요소를 얻는 방법은 매우 간단합니다. 스크래핑 대상 웹페이지의 아무 곳이나 마우스 오른쪽 버튼으로 클릭하고 팝업 메뉴에서 '검사'를 클릭합니다.

먼저 맨 위 아이콘(1로 표시)을 클릭합니다. 페이지에서 요소를 선택하면 해당 요소에 대한 상세 정보가 강조 표시됩니다. 다음으로, 특정 제품에 대한 컨테이너 요소를 선택합니다.

가장 안쪽의 컨테이너를 선택합니다. 마우스를 가져가면 계속 강조 표시됩니다. 해당 블록을 덮는 최종 쉘을 얻는 순간 클릭하고, 오른쪽으로 이동하여 요소의 div 클래스를 복사합니다.
마찬가지로, 다른 요소에 대한 샘플을 선택합니다.

마지막으로 HTML 파일을 업로드하고 다음과 같은 프롬프트를 입력합니다.
check out this webpage html and extract the laptop titles, price, and ratings. present the result in a tabular format within this chat interface and also give the results in a CSV to download. div class="s-card-container s-overflow-hidden aok-relative puis-include-content-margin puis puis-vfcg1duwvmpo42mcln9ojhiljk s-latency-cf-section s-card-border" sample title element: span class="a-size-medium a-color-base a-text-normal" sample price element: span class="a-price-whole" sample ratings element: span class="a-size-base puis-bold-weight-text"
ChatGPT 코드 인터프리터가 작업을 완료하는 데 시간이 걸릴 수 있습니다. 몇 가지 세부 사항이 누락되었지만, 모든 정보는 함께 제공된 CSV 파일에 들어 있습니다.

표에는 특히 시작 부분에 원래 웹페이지에는 없던 일부 항목이 포함되어 있음을 확인할 수 있습니다. 이러한 경우, 중복된 데이터가 있는지 다시 확인하고 정리해야 합니다.
필요하다면 ChatGPT에 추가 프롬프트를 보내 깔끔한 CSV를 얻을 수 있습니다.
결론
ChatGPT는 다양한 작업을 수행할 수 있으며, 기본적인 웹 스크래핑도 그중 하나입니다. 수백 페이지를 스크래핑해야 하는 사용자에게는 적합하지 않을 수 있지만, 웹 스크래핑을 시작하기 위한 좋은 출발점이며, 짧은 스크래핑 세션에 이상적입니다.
이 가이드에서는 스크래핑 플러그인과 코드 인터프리터를 활용했습니다. 플러그인은 많은 일반적인 웹사이트에서 작동하지만, 코드 인터프리터는 사용자 정의 웹페이지 구조나 동적 요소(무한 스크롤, 상세 내용 등)가 있는 페이지에 적합합니다.
다시 한번 강조하지만, 스크래핑 작업을 수행하기 전에 반드시 해당 웹사이트의 이용 약관을 확인하시기 바랍니다.
추신: 클라우드 스크래핑 솔루션과 자체 koreantech.org 스크래핑 API도 확인해 보시기 바랍니다.