[python] Beautiful Soup로 웹 페이지의 모든 폼 데이터 추출하기

Beautiful Soup은 파이썬에서 HTML과 XML을 파싱하는 데 사용되는 강력한 라이브러리입니다. 이 라이브러리를 사용하면 웹 페이지의 모든 폼 데이터를 쉽게 추출할 수 있습니다. 이번 포스트에서는 Beautiful Soup를 사용하여 웹 페이지의 폼 데이터를 어떻게 추출하는지 알아보겠습니다.

1. Beautiful Soup 설치하기

먼저 Beautiful Soup를 설치해야 합니다. 다음 명령을 사용하여 Beautiful Soup를 설치합니다.

pip install beautifulsoup4

2. 웹 페이지에서 폼 데이터 추출하기

Beautiful Soup를 사용하여 웹 페이지의 폼 데이터를 추출하는 방법은 간단합니다. 먼저 웹 페이지의 HTML을 가져옵니다. 이를 위해 requests 라이브러리를 사용할 수 있습니다.

import requests
from bs4 import BeautifulSoup

# 웹 페이지의 HTML 가져오기
url = "https://www.example.com"
response = requests.get(url)
html = response.text

다음으로 Beautiful Soup 객체를 생성하고 HTML을 파싱합니다.

# Beautiful Soup 객체 생성 및 HTML 파싱
soup = BeautifulSoup(html, "html.parser")

이제 모든 폼 태그를 찾고 데이터를 추출할 수 있습니다.

# 모든 폼 태그 찾기
forms = soup.find_all('form')

# 각 폼의 데이터 추출하기
for form in forms:
    # 폼 데이터 추출
    form_data = {}
    inputs = form.find_all('input')
    for input in inputs:
        name = input.get('name')
        value = input.get('value')
        form_data[name] = value

    # 추출한 데이터 출력
    print(form_data)

위의 예시에서는 find_all 메소드를 사용하여 모든 폼 태그를 찾은 후, 각 폼에 있는 입력 필드를 찾아 데이터를 추출합니다. 추출한 데이터는 딕셔너리에 저장된 후 출력됩니다.

3. 결론

Beautiful Soup를 사용하여 웹 페이지의 폼 데이터를 추출하는 방법에 대해 알아보았습니다. 이를 활용하면 웹 크롤링이나 웹 스크래핑과 같은 작업을 수행할 때 폼 데이터를 손쉽게 추출할 수 있습니다.

더 많은 Beautiful Soup의 기능과 사용법에 대해서는 공식 문서를 참조하시기 바랍니다.

위의 예제는 Python 3 기준으로 작성되었습니다.