|
|
(다른 사용자 한 명의 중간 판 하나는 보이지 않습니다) |
1번째 줄: |
1번째 줄: |
| {{파이썬}}
| | ===옮김=== |
| | |
| == 개요 == | |
| HTML페이지로부터 정보를 추출한다.
| |
| | |
| 크롤링은 requests 모듈로도 가능하지만, 코드를 파이썬이 이해하는 구조로 바꾸어주진 못한다. 때문에 사용하는 도구. 데이터는 requests나 다른 모듈로 불러오고, 분석을 BeautifulSoup에서 수행한다.
| |
| | |
| | |
| pip install beautifulsoup4
| |
| | |
| 파서 라이브러리를 골라 사용할 수 있는데 pip install lxml 로 설치해 사용한다.(다양한 파서 종류가 있으니, 적절한 것을 찾아 사용하면 된다.)
| |
| <br />
| |
| | |
| == 사용 == | |
| | |
| === 기본 사용법 ===
| |
| {| class="wikitable"
| |
| |+
| |
| !과정
| |
| !설명
| |
| !방법
| |
| |-
| |
| |url 열기
| |
| |url 문서를 연다.
| |
| 뷰티플 스프를 불러오는 과정에 유의하자.
| |
| |<syntaxhighlight lang="python">
| |
| from bs4 import BeautifulSoup
| |
| from urllib.request import urlopen
| |
| | |
| with urlopen(url) as 문서: # 이처럼 열어 사용한다. with을 사용하면 save()를 따로 할 필요가 없다.
| |
| 명령
| |
| </syntaxhighlight>
| |
| |-
| |
| |BeautifulSoup와 연결
| |
| |특정 html 문서를 파서와 연결한다.
| |
| |<syntaxhighlight lang="python">
| |
| html = BeautifulSoup(문서, lxml) # 파서 라이브러리를 lxml로 지정해 사용한다.
| |
| </syntaxhighlight>
| |
| |-
| |
| |태그 찾기
| |
| |위 명령 부분에 작성한다.
| |
| find_all() 혹은 find() 사용.
| |
| |<syntaxhighlight lang="python">
| |
| 내용 = html.find('찾을태그', class='찾을클래스')
| |
| </syntaxhighlight>
| |
| |-
| |
| |
| |
| |
| |
| |
| |
| |}
| |
| | |
| === 기타 사용법 ===
| |
| {| class="wikitable"
| |
| !의도
| |
| !설명
| |
| !방법
| |
| |-
| |
| |하위 속성에 접근
| |
| |닷 문법으로 하위태그에 접근할 수 있다.
| |
| |<syntaxhighlight lang="python">
| |
| 내용.a # 찾은 내용 안의 a태그에 접근한다.
| |
| </syntaxhighlight>
| |
| |-
| |
| |
| |
| |
| |
| |
| |
| |}
| |