챗GPT를 활용한 웹 스크래핑(scraping) 스크립트 작성

일반적으로 특정한 데이터만을 웹사이트로부터 가져오는 행위를 스크래핑(scraping)이라고 하는데요, 챗GPT를 활용해서 웹 스크래핑 스크립트를 작성하는 방법을 소개하는 기사 공유합니다.😃


<웹 스크래핑(Web Scraping)에 챗GPT 사용하기>


  1. goodreads.com에서 책 목록을 스크랩하는 스크립트를 챗GPT로 작성하는 가이드


1️⃣ 요소(Element) 확인하기

1) 대상 웹 페이지에서 추출하고자 하는 요소를 찾아야 하는데요, 이 가이드에서는 book name과 author name을 추출하고자 합니다.

2) 마우스 오른쪽 버튼 클릭하고 inspect를 선택하면 개발자 도구 창에서 HTML 코드가 보입니다.

3) 요소를 마우스 오른쪽 버튼 클릭하고 book title이 있는 selector를 복사합니다.

author name에 대한 selector도 확인해서 복사합니다.


2️⃣ 챗GPT에 프롬프트 입력

BeautifulSoup을 사용하여 Python에서 웹 스크레이퍼(scraper)를 생성하도록 요청합니다.


"Code a web scraper in Python using the BeautifulSoup library.

Target Website: https://www.goodreads.com/list/show/18816.Books_You_Must_Read_

Goal: Scrape the names of all the books and their authors from the target page.

Here are the CSS selectors of the data needed:

1. Book Name:#all_votes > table > tbody > tr:nth-child(1) > td:nth-child(3) > a > span

2. Author Name: #all_votes > table > tbody > tr:nth-child(1) > td:nth-child(3) > span:nth-child(4) > div > a > span

Final Output: Save all the Book Names and Author Names in a CSV file.

Additional Instructions: Handle character encoding and remove undesirable symbols in the output CSV."


3️⃣ 코드 리뷰

챗GPT가 생성한 코드를 살펴봅니다.


4️⃣ 스크레이퍼(scraper) 생성 후 실행

챗GPT가 생성한 코드를 복사한 후 실행합니다. 매우 간단하죠? 😃


  1. 코더를 위한 팁: 코드 최적화, 동적 페이지 처리, 코드 린팅(Linting), 코드 에디팅 도움말(Help) 등


일부 웹사이트에서는 강력한 보안 조치를 배포하여 자동화된 스크레이퍼를 방지하기 위해 추가 예방 조치를 취하는데, CAPTCHA 및 요청 속도 제한과 같은 전술이 포함되는 경우가 있습니다. 이러한 경우 챗GPT에서 생성된 기본 웹 스크레이퍼는 처리에 어려움을 겪을 수 있는데요, Nimble의 Nimble API, Nimble Browser 및 Nimble IP와 같은 프록시 서비스를 사용하면 이러한 문제를 극복할 수 있다고 합니다.


원본 기사 링크는 아래와 같습니다. 감사합니다🙏

[Source Link] https://blog.stackademic.com/using-chatgpt-for-web-scraping-a-practical-guide-673fa2bbfac1

Using ChatGPT For Web Scraping: A Practical Guide

Medium

Using ChatGPT For Web Scraping: A Practical Guide

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2023년 11월 28일 오후 3:02

 • 

저장 20조회 2,483

댓글 0