Python, BeautifulSoup for crawling.

libramin·2022년 9월 2일
0

Python

목록 보기
2/5
post-thumbnail

Crawling

웹 페이지로부터 데이터를 추출하는 행위

package : beautifulSoup

파이썬에서 크롤링할 때 주로 사용되는 패키지
HTML,XML 문서로부터 원하는 정보를 추출할 수 있다.

package 사용하기

# 패키지 설치 : `!pip install 패키지이름`
!pip install beautifulSoup4

# bs4(beautifulSoup4)라는 패키지로부터 BeautifulSoup라는 모듈을 임포트
from bs4 import BeautifulSoup

# BeautifulSoup 인스턴스 생성. 첫번째 매개변수는 분석할 문서, 두번째 매개변수는 분석할 분석기(parser)의 종류.
soup1 = BeautifulSoup(html, 'html.parser')

정보 가져오기

  • 인스턴스.select('찾는정보')
    • soup1.select('태그명') : 태그를 입력으로 사용할 경우
    • soup1.select('.클래스명') : 클래스를 입력으로 사용할 경우
    • soup1.select('#아이디') : ID를 입력으로 사용할 경우
    • soup1.select('상위태그명 하위태그명') :
      자손 관계 (어떤 태그 내부에 있는 모든 태그를 자손이라고 함)
    • soup1.select('상위태그명 > 하위태그명') :
      자식 관계 (어떤 태그 내부에 있는 태그 중 바로 한 단계 아래에 있는 태그를 자식이라고 함)
  • 인스턴스.태그명
    해당 태그를 포함하여 그 태그가 끝날 까지의 문장을 가져온다.
    단, 해당 태그가 여러개 있다면 첫번째 태그만 가져온다.
    # html 문서의 a태그를 가져온다.
    soup1.a  
    # 출력결과
    <a href="http://www.google.com"> 바로가기 </a>
  • 인스턴스.태그명.get('속성명')
    해당 속성의 값을 가져온다.
    ex. abc = 'apple' 일 때, get('abc')를 하면 'apple'가져옴.
    # 하이퍼링크 속성의 값을 가져온다.
    soup1.a.get('href')  
    # 출력결과
    http://www.google.com
profile
Hello, I'm libramin!

0개의 댓글