[python] Beautiful Soup로 웹 페이지의 모든 특정 태그 추출하기

웹 스크래핑은 웹 페이지의 내용을 추출하고 분석하는데 유용한 기술입니다. 파이썬에서는 Beautiful Soup라는 라이브러리를 사용하여 웹 페이지의 HTML 코드를 파싱하고 원하는 정보를 추출할 수 있습니다.

이번 예제에서는 Beautiful Soup를 사용하여 웹 페이지에서 모든 특정 태그를 추출하는 방법을 알아보겠습니다.

필요한 라이브러리 설치하기

Beautiful Soup를 사용하기 위해 우선 라이브러리를 설치해야 합니다. 다음 명령을 사용하여 설치할 수 있습니다.

pip install beautifulsoup4

웹 페이지에서 HTML 코드 가져오기

Beautiful Soup를 사용하여 웹 페이지의 HTML 코드를 가져와야 합니다. 이를 위해 requests 라이브러리를 사용할 수 있습니다. 다음은 requests 라이브러리를 사용하여 웹 페이지의 HTML 코드를 가져오는 예제입니다.

import requests

url = "https://www.example.com"
response = requests.get(url)
html_code = response.text

Beautiful Soup로 특정 태그 추출하기

페이지의 HTML 코드를 가져왔으므로 이제 Beautiful Soup를 사용하여 원하는 태그를 추출할 수 있습니다. 다음은 find_all 메서드를 사용하여 웹 페이지의 모든 <a> 태그를 추출하는 예제입니다.

from bs4 import BeautifulSoup

soup = BeautifulSoup(html_code, "html.parser")
a_tags = soup.find_all("a")

위의 코드는 웹 페이지의 모든 <a> 태그를 추출하여 a_tags 변수에 저장합니다.

추출한 태그 활용하기

추출한 태그를 활용하여 다양한 작업을 수행할 수 있습니다. 예를 들어, 추출한 <a> 태그의 링크 URL을 가져올 수 있습니다.

for a_tag in a_tags:
    link_url = a_tag["href"]
    print(link_url)

위의 예제는 추출한 <a> 태그의 href 속성을 가져와 각 링크의 URL을 출력합니다.

결론

Beautiful Soup를 사용하면 웹 페이지에서 원하는 태그를 추출하고 분석하는 작업을 간단하게 수행할 수 있습니다. 웹 스크래핑을 적용하여 필요한 정보를 추출할 수 있으며, 이를 통해 데이터 분석 등 다양한 작업에 활용할 수 있습니다.

참고 자료