가이드라인

BeautifulSoup란?

BeautifulSoup은 파이썬에서 웹 크롤링을 쉽게 수행할 수 있도록 도와주는 라이브러리로, HTML 파일에서 데이터를 추출하고 파싱합니다.

파싱(parsing)은 웹페이지의 HTML 문서를 분석하여 원하는 데이터를 추출하는 과정을 뜻합니다. BeautifulSoup은 이러한 파싱 작업을 쉽게 수행할 수 있도록 돕습니다.


BeautifulSoup의 기능과 특징

  1. 다양한 파서 지원

    • BeautifulSoup은 HTML/XML 문서를 파싱하기 위해 여러 종류의 파서(parser)를 지원합니다.

    • 가장 일반적으로 사용되는 파서는 html.parser(표준 파이썬 라이브러리)와 lxml입니다.

  2. 간편한 데이터 추출

    • 특정 태그, ID, 클래스 등을 쉽게 검색할 수 있습니다.

    • 텍스트, 속성 값 등 웹페이지의 다양한 요소들을 효과적으로 추출할 수 있습니다.

  3. 복잡한 HTML 구조 다루기

    • 중첩된 태그나 복잡한 HTML 구조도 쉽게 탐색하고, 필요한 데이터를 추출할 수 있습니다.

    • 태그의 계층적 관계를 활용하여 정확한 데이터 위치를 찾을 수 있습니다.

  4. 유연한 검색 방법

    • CSS 선택자, 정규 표현식 등 다양한 방법으로 데이터를 검색할 수 있습니다.

    • 복수의 조건을 결합하여 특정 패턴을 가진 데이터를 찾는 것도 가능합니다.


사용법

BeautifulSoup 라이브러리 사용 예제
from bs4 import BeautifulSoup # HTML 문서 예시 html_doc = """ <html> <head> <title>The Codefriends' story</title> </head> <body> <p class="title"><b>The Codefriends' story</b></p> <p class="story">Once upon a time there were three little sisters; and their names were <a href="http://example.com/elsie" class="sister" id="link1">Elsie</a>, <a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> and <a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>; and they lived at the bottom of a well.</p> <p class="story">...</p> </body> </html> """ # BeautifulSoup 객체 생성 soup = BeautifulSoup(html_doc, 'html.parser') # HTML title 태그 내용 추출 title = soup.title.text print('Title:', title) # 결과: The Codefriends' story print('-' * 10) # 'a' 태그의 href 속성 값 추출 for link in soup.find_all('a'): print(link.get('href'))

실습

화면 오른쪽 코드 실행 버튼을 누르고, 크롤링 결과를 확인하거나 코드를 수정해 보세요!

가이드라인

AI 튜터

배포

디자인

업로드

수업 노트

즐겨찾기

도움말

코드 에디터

코드 실행
코드 생성

실행 결과