Beautifulsoup4
파이썬 공부를 위한 틀 틀:파이썬
- 파이썬:개요
- 파이썬:변수
- 파이썬:함수
- 파이썬:데코레이터
- 파이썬:제어문
- 파이썬:클래스
- 파이썬:데이터 입출력
- 파이썬:라이브러리
- 파이썬:time, datetime(시간 다루기)
- 파이썬:os(운영체제 기능 이용)
- 파이썬:sys(인터프리터 관련 기능 제공)
- 파이썬:schedule(예약명령)
- 파이썬:COM(다른 프로그램과 연동)
- 판다스(데이터 분석)
- pybithumb(비트코인 거래)
- 파이썬:requests(api다루기)
- 파이썬:pymysql(mysql 연동)
- 파이썬:sqlite3(sqlite3 연동)
- 파이썬:math(숫자, 계산 관련)
- 파이썬:numpy(다차원 배열 및 데이터 다루기)
- 파이썬:matplotlib(그래프, 데이터 시각화)
- 파이썬:keras(딥러닝)
- 파이썬:turtle(그리기)
- 파이썬:프레임워크
- 파이썬:팁
- 파이썬:window창
- 파이썬:다양한 전략
개요
HTML페이지로부터 정보를 추출한다.
크롤링은 requests 모듈로도 가능하지만, 코드를 파이썬이 이해하는 구조로 바꾸어주진 못한다. 때문에 사용하는 도구. 데이터는 requests나 다른 모듈로 불러오고, 분석을 BeautifulSoup에서 수행한다.
pip install beautifulsoup4
파서 라이브러리를 골라 사용할 수 있는데 pip install lxml 로 설치해 사용한다.(다양한 파서 종류가 있으니, 적절한 것을 찾아 사용하면 된다.)
사용
기본 사용법
과정 | 설명 | 방법 |
---|---|---|
url 열기 | url 문서를 연다.
뷰티플 스프를 불러오는 과정에 유의하자. |
from bs4 import BeautifulSoup
from urllib.request import urlopen
with urlopen(url) as 문서: # 이처럼 열어 사용한다. with을 사용하면 save()를 따로 할 필요가 없다.
명령
|
BeautifulSoup와 연결 | 특정 html 문서를 파서와 연결한다. | html = BeautifulSoup(문서, lxml) # 파서 라이브러리를 lxml로 지정해 사용한다.
|
태그 찾기 | 위 명령 부분에 작성한다.
find_all() 혹은 find() 사용. |
내용 = html.find('찾을태그', class='찾을클래스')
|
기타 사용법
의도 | 설명 | 방법 |
---|---|---|
하위 속성에 접근 | 닷 문법으로 하위태그에 접근할 수 있다. | 내용.a # 찾은 내용 안의 a태그에 접근한다.
|