스크랩핑이란 웹에서 데이터를 추출하고 원하는 정보를 추출하는 것이다.
스크랩핑을 잘하면 데이터를 잘 수집할 수 있다.
그 중에서 BeautifulSoup이라는 라이브러리를 이용하면 HTML과 XML에서 간단하게 정보를 추출할 수 있다.
최근 스크랩핑 라이브러리에는 다운로드부터 HTML 분석까지 되는 경우가 많은데 BeautifulSoup는 자체 다운로드 기능이 없다.
먼저 cmd 창으로 C:\WINDOWS\system32>pip install beautifulsoup4 를 설치했다.
그리고 파이썬 코드로 간단하게 html형태의 변수를 만들었다.
from bs4 import BeautifulSoup
html = """
<html><body>
<h1>h1입니다</h1>
<p>첫번째 p태그</p>
<p>두번째 p태그</p>
<p>세번째 p태그</p>
</body></html>
"""
soup = BeautifulSoup(html, 'html.parser')
h1 = soup.html.body.h1
p1 = soup.html.body.p
p2 = p1.next_sibling.next_sibling
p3 = p2.next_sibling.next_sibling
print("h1 = " + h1.string)
print("p = " + p1.string)
print("p = " + p2.string)
print("p = " + p3.string)
실행하면 다음처럼 추출이 됐다.
이 방법외에도 id로 요소를 추출하는 방법이 있다.
바로 find() 메서드를 사용하면 된다.
from bs4 import BeautifulSoup
html = """
<html><body>
<h1 id="title">h1입니다</h1>
<p id="body">p태그</p>
</body></html>
"""
soup = BeautifulSoup(html, 'html.parser')
title = soup.find(id="title")
body = soup.find(id="body")
print("#title=" + title.string)
print("#body=" + body.string)
'Programming > AI' 카테고리의 다른 글
도커에 파이썬 + Anaconda 환경 구축하기 (0) | 2018.06.21 |
---|---|
Windows 10에 Docker(도커) 설치하기 (0) | 2018.06.20 |
셀레니움 네이버 메일 제목 크롤링하기 (3) | 2018.06.16 |
파이썬으로 기상청 데이터 크롤링하는 방법 (0) | 2018.06.11 |
파이썬으로 이미지 크롤링하기(urlopen()으로 이미지 파일 다운로드 방법) (0) | 2018.06.10 |