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

인터넷에서 정보를 스크래핑하거나 웹 페이지의 내용을 가공하기 위해서는 웹 페이지의 HTML 구조를 분석하고 조작할 수 있어야 합니다. 이를 위해 Python에서는 Beautiful Soup라는 라이브러리를 사용할 수 있습니다. Beautiful Soup는 HTML 파서로써 HTML 문서를 읽어서 태그 구조를 파싱하고, 원하는 태그를 수정하거나 새로운 태그를 추가하는 등 다양한 작업을 수행할 수 있습니다.

이번 포스트에서는 Beautiful Soup를 사용하여 웹 페이지의 모든 태그를 수정하는 방법을 알아보겠습니다.

Beautiful Soup 설치

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

pip install beautifulsoup4

예제 코드

다음은 Beautiful Soup를 사용하여 웹 페이지의 모든 태그를 수정하는 예제 코드입니다.

from bs4 import BeautifulSoup

# 웹 페이지의 HTML 컨텐츠를 가져옵니다.
html = """
<html>
<head>
<title>웹 페이지 제목</title>
</head>
<body>
<h1>웹 페이지</h1>
<p>이것은 웹 페이지의 내용입니다.</p>
</body>
</html>
"""

# BeautifulSoup 객체를 생성합니다.
soup = BeautifulSoup(html, 'html.parser')

# 모든 태그를 선택하여 수정합니다.
for tag in soup.find_all():
    # 태그의 내용을 수정합니다.
    tag.string = tag.string.upper()

# 수정된 HTML을 출력합니다.
print(soup.prettify())

위의 예제 코드는 HTML 문서를 문자열 형태로 받아와서 Beautiful Soup 객체를 생성한 후 모든 태그를 선택하여 태그의 내용을 대문자로 변경합니다. 수정된 HTML은 prettify() 메서드를 사용하여 읽기 쉬운 형태로 출력됩니다.

실행 결과

위의 예제 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

<html>
 <head>
  <title>
   웹 페이지 제목
  </title>
 </head>
 <body>
  <h1>
   웹 페이지
  </h1>
  <p>
   이것은 웹 페이지의 내용입니다.
  </p>
 </body>
</html>

모든 태그의 내용이 대문자로 변경되어 출력되는 것을 확인할 수 있습니다.

결론

Beautiful Soup는 Python에서 웹 스크래핑 및 가공 작업을 수행할 때 매우 유용한 라이브러리입니다. 이번 포스트에서는 Beautiful Soup를 사용하여 웹 페이지의 모든 태그를 수정하는 방법을 소개했습니다. Beautiful Soup의 다양한 기능을 활용하여 웹 페이지의 태그를 원하는 대로 조작할 수 있으니, 자세한 내용은 Beautiful Soup 문서를 참고하시기 바랍니다.

참고 자료