BBC 뉴스 웹 크롤링 체험하기
웹 크롤링(Web Crawling)
은 인터넷 상의 웹사이트를 자동으로 탐색하며 필요한 데이터를 수집하는 기술을 뜻합니다.
주로 크롤러(Crawler)
라고 불리는 자동화된 프로그램 사용하여 웹 페이지의 내용, 즉 HTML 코드를 가져온 후 코드를 분석하여 필요한 데이터를 수집합니다.
웹 크롤링과 웹 스크래핑의 차이
웹 크롤링
(Web Crawling)과 웹 스크래핑
(Web Scraping)은 종종 혼용되어 사용되지만, 엄밀한 의미에서는 다른 개념입니다.
실습 코드와 같이 특정 웹 페이지에서 원하는 내용만 추출하는 것은 웹 스크래핑
이라고 합니다.
웹 스크래핑은 웹 크롤링처럼 여러 웹 페이지를 자동으로 탐색하지 않고, 주로 1개의 웹 페이지 또는 특정 데이터를 타겟팅합니다.
요약하면 웹 크롤링은 여러 웹 페이지를 자동으로 탐색하여 데이터를 수집하는 과정을 뜻하고, 웹 스크래핑은 웹 페이지의 내용을 추출하는 과정을 의미합니다.
하지만 본 강의에서는 여러 웹 페이지를 탐색하거나 데이터를 저장하는 과정까지 다루므로 주로 웹 크롤링
이라는 용어를 사용하겠습니다.
BBC 뉴스 웹 크롤링 실습
실습 화면의 코드는 BBC 뉴스 웹사이트에서 기사 제목
을 실시간으로 크롤링(엄밀히 말하면 스크래핑)하는 코드입니다.
파이썬에서 웹 페이지의 HTML 코드를 가져와 데이터를 분석할 때는 주로 requests
와 BeautifulSoup
라이브러리를 사용합니다.
이 라이브러리가 어떻게 사용되는지, 원하는 정보를 추출하기 위해서 어떤 코드를 작성해야 하는지는 후속 코스에서 자세히 다루겠습니다.
# BBC 뉴스 웹사이트 주소
url = "https://www.bbc.com/news"
response = requests.get(url)
# 요청 성공 여부 확인
print("status_code:", response.status_code)
# HTML 데이터 파싱
soup = BeautifulSoup(response.text, "html.parser")
# 페이지에서 h2 태그로 기사 제목 10개 추출
titles = soup.find_all('h2', limit=10)
코드 에디터의 초록색으로 표시된 ▶︎ 실행
버튼을 누르고, BBC 뉴스 웹사이트에서 실시간으로 크롤링한 기사 제목을 확인해 보세요! 🙂