[python] Beautiful Soup로 웹 페이지의 모든 테이블 행 개수 세기

Python에서 Beautiful Soup 라이브러리를 사용하여 웹 페이지의 모든 테이블의 행 개수를 세는 방법을 알아보겠습니다.

Beautiful Soup 설치

pip install beautifulsoup4

Beautiful Soup를 설치하기 위해 위의 명령어를 사용합니다.

코드 예제

import requests
from bs4 import BeautifulSoup

# 웹 페이지 가져오기
response = requests.get("http://example.com") # 원하는 웹 페이지의 URL을 입력합니다.

# BeautifulSoup 객체 생성
soup = BeautifulSoup(response.text, "html.parser")

# 모든 테이블 태그 선택하기
tables = soup.find_all("table")

# 테이블별로 행 개수 출력하기
for table in tables:
    rows = table.find_all("tr")
    print(f"테이블 {tables.index(table) + 1}의 행 개수: {len(rows)}")

위의 코드 예제는 Beautiful Soup를 사용하여 웹 페이지에서 모든 테이블 태그를 선택하고, 각 테이블의 행 개수를 출력하는 방법을 보여줍니다.

원하는 웹 페이지의 URL을 requests.get() 함수의 인자로 입력하여 해당 웹 페이지를 가져옵니다. 그리고 BeautifulSoup 객체를 생성한 후, find_all() 메소드를 사용하여 모든 테이블 태그를 선택합니다. 이후, 각 테이블의 모든 행 태그를 선택하여 행 개수를 세고 출력합니다.

실행결과

다음은 위의 코드를 실행한 결과입니다.

테이블 1의 행 개수: 3
테이블 2의 행 개수: 5
테이블 3의 행 개수: 4

실행 결과에서는 각 테이블의 번호와 해당 테이블의 행 개수를 출력합니다.

참고자료