Languages/Python

[파이썬] BeautifulSoup이란? BeautifulSoup 사용법

MOONCO 2021. 2. 22. 18:22

BeautifulSoup이란? 

HTML정보로 부터 원하는 데이터를 가져오기 쉽게,

비슷한 분류의 데이터별로 나누어주는(parsing) 파이썬 라이브러리

( 보통 html정보를 가져오는 urllib.request.urlopen() 모듈과 함께 사용되곤 합니다 )

 

BeautifulSoup 설치

# bs4 : BeautifulSoup4

pip install bs4

 

BeautifulSoup가 정보를 분류하는 방식

분류방식(parser) 특징 설치 여부 속도 사용방법
html.parser   기본 설치 중간 BeautifulSoup(markup, 'html.parser')
lxml xml 파일 지원 lxml 설치 필요 매우 빠름 BeautifulSoup(markup, 'lxml')
xml lxml 설치 필요 매우 빠름 BeautifulSoup(markup, 'xml')
html5lib 브라우저와 같은 방식 html5lib 설치 필요 매우 느림 BeautifulSoup(markup, 'html5lib')

 

 

원하는 HTML 태그 찾아서 불러오기

( 조건에 맞는 태그가 1개 이상이면, 첫 번째 태그 가져옴 )

# bs에서 <p> 태그로 감싸져 있는 부분 찾기
p = bs.find('p')

# class명 찾기
class = bs.find('div', class='ex_class')

# id 찾기
id = bs.find('div', id='ex_id')

 

원하는 HTML 태그 전부 불러오기

# bs에서 <p> 태그로 감싸진 부분 전부가져오기 ( list 형식으로 저장 )
p = bs.find_all('p')

# class 전부 찾기
class = bs.find_all('div', class='ex_class')

# id 전부 찾기
id = bs.find_all('div', class='ex_id')

 

가져온 정보 출력하기

# 위의 내용과 이어집니다

# 태그이름 출력 ( p )
print(p.name)

# class명 출력
print(class['class']

# id명 출력
print(id['id'])

 

 

반응형