<Python> 웹 스크래핑을 위한 BeautifulSoup 사용법
- Developer/Python
- 2023. 8. 15.
반응형
파이썬 웹 스크래핑: BeautifulSoup 사용법
웹 스크래핑이란 웹 사이트의 정보를 추출하는 기술입니다.
이러한 웹 스크래핑을 파이썬에서 구현하기 위해 BeautifulSoup
이라는 라이브러리를 사용할 수 있습니다.
이 글에서는 BeautifulSoup을 사용하여 웹 페이지를 스크래핑하는 방법을 알아보겠습니다.
BeautifulSoup 설치
먼저, BeautifulSoup을 사용하려면 해당 라이브러리를 설치해야 합니다. 다음 명령어를 통해 설치할 수 있습니다.
pip install beautifulsoup4
절차
- 웹 페이지 가져오기: 웹 페이지의 HTML 코드를 가져옵니다. 이를 위해
requests
라이브러리를 사용합니다. - BeautifulSoup 객체 생성: 가져온 웹 페이지를 BeautifulSoup 객체로 만듭니다.
- 원하는 정보 추출: 웹 페이지에서 원하는 정보를 추출합니다.
웹 페이지 가져오기
예제 코드는 다음과 같습니다.
import requests
url = "https://www.example.com"
response = requests.get(url)
print(response.text)
BeautifulSoup 객체 생성
BeautifulSoup 객체를 생성하려면 인터넷에서 가져온 HTML 코드를 인수로 주면 됩니다.
from bs4 import BeautifulSoup
import requests
url = "https://www.example.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
정보 추출
BeautifulSoup 객체를 이용하여 웹 페이지에서 원하는 정보를 추출합니다.
태그 검색
가장 간단한 방법은 태그 이름으로 검색하는 것입니다.
first_h1_tag = soup.h1
print(first_h1_tag)
태그의 속성 가져오기
태그의 속성을 가져올 수 있습니다. 예제 코드는 다음과 같습니다.
first_link_tag = soup.a
print(first_link_tag.get("href"))
여러 태그 가져오기
동일한 태그가 여러 개 있는 경우 find_all
메서드를 사용하여 리스트로 가져올 수 있습니다.
all_h2_tags = soup.find_all("h2")
for h2 in all_h2_tags:
print(h2)
특정 속성을 가진 태그 가져오기
find
메서드를 사용하여 특정 속성을 가진 태그를 검색할 수 있습니다.
div_with_id = soup.find("div", id="container")
print(div_with_id)
텍스트 추출
get_text
메서드를 사용하여 태그에서 텍스트를 추출할 수 있습니다.
first_h1_tag = soup.h1
print(first_h1_tag.get_text())
여기서는 BeautifulSoup 라이브러리를 사용하여 웹 스크래핑을 수행하는 방법에 대해 살펴보았습니다.
웹 페이지에서 HTML 코드를 가져와서 원하는 정보를 추출하는 과정을 간단한 코드로 구현할 수 있습니다.
이를 통해 웹 사이트의 데이터를 자동으로 수집하고 분석하여 다양한 목적으로 활용할 수 있습니다.
감사합니다.
'Developer > Python' 카테고리의 다른 글
<Python> RESTful API 개발과 사용 (0) | 2023.08.16 |
---|---|
<Python> SQLAlchemy 사용법 (0) | 2023.08.15 |
<Python> JSON 데이터처리 (0) | 2023.08.14 |
<Python> CSV 다루기 (0) | 2023.08.13 |
<Python> 정규 표현식 (0) | 2023.08.13 |