본문 바로가기
프로그래밍/파이썬

[python] BeautifulSoup 사용

by 홍삼절편 2021. 9. 6.

python에서 웹 스크래핑을 하기 위한 패키지로 BeautifulSoup이 있다.

BeautifulSoup은 lxml과 함께 사용된다.

BeautifulSoup은 실제로 스크래핑을 하기 위한 패키지, lxml은 구문분석하는 파서이다.

 

두 패키지 모두 터미널에서 pip3 install beautifulsoup4, pip3 install lxml을 통해 설치할 수 있다.

beautifulsoup 설치
lxml 설치

터미널에서 설치를 완료했다면, 

웹스크래핑을 하기 위해 모듈을 먼저 임포트 해줘야한다.

임포트 후에는 이러한 방식으로 BeautifulSoup을 사용한다.

 

soup = BeautifulSoup(res.text, 'lxml') :

# res라는 변수를 통해 가져온 html 주소를 lxml 파서를 통해서 beutifulsoup 객체로 만드는 과정이다.

 

몇 가지 사용 예를 살펴 보면,

11. print(soup.a) # soup 객체에서 처음 발견되는 a element를 반환.

12. print(soup.a.attrs) # a Element가 가지고 있는 속성 보기

13. print(soup.a['href'])  # a element의 href 속성 값 정보를 출력.

15. print(soup.find('a', attrs={'class':'Class_name'})) # a 태그에서 클래스 속성이 'Class_name'인 정보만 찾기

16. print(soup.find(attrs={'class':'Class_name'})) # 클래스 속성이 'Class_name'인 정보를 찾기

 

등의 기본적인 동작을 해볼 수 있다.