웹 스크레이핑은 웹 페이지에서 정보를 수집하는 작업을 말합니다. Beautiful Soup 4는 파이썬에서 웹 스크레이핑을 간편하게 할 수 있는 라이브러리입니다. 이번 포스트에서는 Beautiful Soup 4로 수집한 웹 스크레이핑 결과를 엑셀 파일로 저장하는 방법에 대해 알아보겠습니다.
Beautiful Soup 4 설치
Beautiful Soup 4를 사용하기 위해서는 먼저 설치해야 합니다. 파이썬 패키지 관리자인 pip를 사용하여 설치할 수 있습니다. 터미널 또는 명령 프롬프트에서 다음 명령어를 실행합니다:
pip install beautifulsoup4
웹 스크레이핑하기
먼저, Beautiful Soup 4를 사용하여 웹 페이지를 스크레이핑하는 방법을 알아보겠습니다. 예를 들어, 다음과 같은 HTML 코드가 있는 웹 페이지를 스크레이핑한다고 가정해 봅시다:
<html>
<body>
<div id="content">
<h1>웹 스크레이핑 예시</h1>
<ul class="items">
<li>아이템 1</li>
<li>아이템 2</li>
<li>아이템 3</li>
</ul>
</div>
</body>
</html>
아래는 Beautiful Soup 4를 사용하여 웹 페이지에서 정보를 추출하는 예제 코드입니다:
from bs4 import BeautifulSoup
# 웹 페이지를 로드
html = """
<html>
<body>
<div id="content">
<h1>웹 스크레이핑 예시</h1>
<ul class="items">
<li>아이템 1</li>
<li>아이템 2</li>
<li>아이템 3</li>
</ul>
</div>
</body>
</html>
"""
soup = BeautifulSoup(html, 'html.parser')
# 태그를 이용하여 원하는 정보 추출
h1 = soup.find('h1')
items = soup.find_all('li')
# 추출한 정보 출력
print(h1.text) # 웹 스크레이핑 예시
for item in items:
print(item.text) # 아이템 1, 2, 3
엑셀 파일로 저장하기
웹 스크레이핑한 결과를 엑셀 파일로 저장하기 위해서는 pandas
라이브러리가 필요합니다. pandas
는 데이터 파일을 다루기 위한 강력한 도구로, 데이터프레임 형태로 데이터를 저장할 수 있습니다. 다음은 pandas
를 사용하여 웹 스크레이핑 결과를 엑셀 파일로 저장하는 예제 코드입니다:
import pandas as pd
# 웹 스크레이핑한 결과를 데이터프레임으로 변환
data = {'item': ['아이템 1', '아이템 2', '아이템 3']}
df = pd.DataFrame(data)
# 데이터프레임을 엑셀 파일로 저장
df.to_excel('web_scraping_results.xlsx', index=False)
위 코드를 실행하면 현재 디렉토리에 web_scraping_results.xlsx
라는 이름으로 엑셀 파일이 생성됩니다. 생성된 엑셀 파일을 열어보면 데이터프레임의 내용이 저장되어 있습니다.
이제 Beautiful Soup 4를 사용하여 웹 스크레이핑한 결과를 엑셀 파일로 저장하는 방법을 알아보았습니다. 웹 스크레이핑을 통해 수집한 데이터를 다양한 분석이나 시각화 작업에 활용할 수 있습니다.