[python] Beautiful Soup로 링크 추출하기

웹 데이터 스크래핑은 데이터를 수집하고 분석하기 위해 많이 사용되는 방법 중 하나입니다. 그 중 Beautiful Soup라는 파이썬 라이브러리를 사용하면 HTML 문서에서 데이터를 추출할 수 있습니다. 이번 포스트에서는 Beautiful Soup를 사용하여 웹 페이지에서 링크를 추출하는 방법에 대해 알아보겠습니다.

1. Beautiful Soup 설치하기

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

pip install beautifulsoup4

2. HTML 문서 가져오기

먼저 웹 페이지의 HTML 문서를 가져와야 합니다. 이를 위해 requests 라이브러리를 사용할 수 있습니다. 예를 들어, 다음과 같이 페이지의 HTML을 가져올 수 있습니다.

import requests

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

3. Beautiful Soup로 링크 추출하기

이제 Beautiful Soup를 사용하여 HTML 문서에서 링크를 추출해 보겠습니다. 다음은 a 태그에 있는 모든 링크를 추출하는 간단한 예제입니다.

from bs4 import BeautifulSoup

soup = BeautifulSoup(html, 'html.parser')
links = soup.find_all('a')

for link in links:
    print(link['href'])

위 코드에서는 우선 BeautifulSoup 객체를 생성하고, HTML 문서와 파서 종류를 인자로 넣어줍니다. 그리고 find_all 메서드를 사용하여 a 태그를 모두 찾아 리스트로 반환합니다. 이후 반복문을 사용하여 각 링크의 href 속성을 출력하면 됩니다.

4. 추가 작업

지금까지는 a 태그의 링크를 추출하는 간단한 예제를 살펴보았습니다. 실제로는 이외에도 다양한 경우에 맞춰 Beautiful Soup를 사용할 수 있습니다. 예를 들어, 특정 조건을 만족하는 링크만 추출하거나, 다른 태그의 데이터도 함께 추출할 수 있습니다. Beautiful Soup의 자세한 사용법은 공식 문서를 참고하시기 바랍니다.

참고 자료