[python] Beautiful Soup로 웹 페이지에서 특정 폼 필드 추출하기
이번 포스트에서는 파이썬 라이브러리인 Beautiful Soup를 사용하여 웹 페이지에서 특정 폼 필드를 추출하는 방법에 대해 알아보겠습니다.
Beautiful Soup이란?
Beautiful Soup은 HTML 및 XML 파일에서 데이터를 추출하는 파이썬 라이브러리입니다. 파이썬에서 웹 스크래핑을 할 때 가장 많이 사용되는 라이브러리 중 하나입니다.
설치
Beautiful Soup을 설치하기 위해 다음 명령어를 사용하세요:
pip install beautifulsoup4
웹 페이지에서 특정 폼 필드 추출하기
- Beautiful Soup 및 requests 모듈을 가져옵니다.
from bs4 import BeautifulSoup
import requests
- 웹 페이지의 URL을 지정하고 requests 모듈을 사용하여 페이지의 내용을 가져옵니다.
url = "https://example.com"
response = requests.get(url)
- 가져온 페이지의 내용을 Beautiful Soup을 사용하여 파싱합니다.
soup = BeautifulSoup(response.content, 'html.parser')
-
폼 필드를 추출하고 싶은 부분의 태그와 속성을 확인합니다. 알고자 하는 폼 필드의 태그와 속성이 어떤 것인지 정확히 알아야 추출할 수 있습니다.
-
find() 또는 find_all() 메서드를 사용하여 원하는 폼 필드를 추출합니다.
form_field = soup.find('input', {'name': 'username'})
위의 예제에서는 name 속성이 “username”인 input 태그를 추출합니다. 이렇게 추출한 폼 필드는 BeautifulSoup 객체로 반환됩니다.
- 추출한 폼 필드에서 원하는 데이터를 가져옵니다. 폼 필드에서 데이터를 가져오려면 get() 메서드를 사용하여 속성의 값을 가져올 수 있습니다.
value = form_field.get('value')
위의 예제에서는 추출한 폼 필드에서 value 속성의 값을 가져옵니다.
- 결과를 출력합니다.
print('Username:', value)
결론
이번 포스트에서는 Beautiful Soup을 사용하여 웹 페이지에서 특정 폼 필드를 추출하는 방법에 대해 알아보았습니다. Beautiful Soup은 웹 스크래핑에 유용한 도구이며, 간단하고 편리한 API를 제공합니다. 웹 스크래핑 작업을 수행할 때 Beautiful Soup을 적극 활용해보세요.
참고 자료
- Beautiful Soup 공식 문서: https://www.crummy.com/software/BeautifulSoup/bs4/doc/
- requests 모듈 공식 문서: https://docs.python-requests.org/en/latest/