> 백엔드 개발 > 파이썬 튜토리얼 > Python의 BeautifulSoup을 사용하여 테이블에서 특정 셀을 추출하는 방법은 무엇입니까?

Python의 BeautifulSoup을 사용하여 테이블에서 특정 셀을 추출하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-10-29 09:08:02
원래의
267명이 탐색했습니다.

How to Extract Specific Cells from a Table Using Python's BeautifulSoup?

Python BeautifulSoup 구문 분석 테이블

질문:

Python의 BeautifulSoup을 사용하여 구문 분석하고 있습니다. 주차 위반 딱지 정보가 포함된 테이블이 있는데 테이블 내의 특정 셀에 액세스하는 데 어려움을 겪고 있습니다. 모든 행과 해당 셀을 추출하는 데 도움을 줄 수 있는 사람이 있습니까?

관련 코드:

<code class="python">soup = BeautifulSoup(plateRequest.text)
table = soup.find("table", {"class": "lineItemsTable"})
for row in table.findAll("tr"):
    cells = row.findAll("td")
    print(cells)</code>
로그인 후 복사

해결책:

행과 셀에 효율적으로 액세스하려면 다음 수정된 코드를 사용하세요.

<code class="python">data = []
table = soup.find('table', attrs={'class':'lineItemsTable'})
table_body = table.find('tbody')

rows = table_body.find_all('tr')
for row in rows:
    cols = row.find_all('td')
    cols = [ele.text.strip() for ele in cols]
    data.append([ele for ele in cols if ele]) # Remove empty values</code>
로그인 후 복사

출력:

수정된 코드를 실행하면 목록 목록이 제공됩니다. 각 내부 목록은 테이블의 행을 나타내며 내부 목록 내의 각 요소는 셀의 텍스트 내용입니다.

[
    ['1359711259', 'SRF', '08/05/2013', '5310 4 AVE', 'K', '19', '125.00', '$'], 
    ['7086775850', 'PAS', '12/14/2013', '3908 6th Ave', 'K', '40', '125.00', '$'], 
    ['7355010165', 'OMT', '12/14/2013', '3908 6th Ave', 'K', '40', '145.00', '$'], 
    ['4002488755', 'OMT', '02/12/2014', 'NB 1ST AVE @ E 23RD ST', '5', '115.00', '$'], 
    ['7913806837', 'OMT', '03/03/2014', '5015 4th Ave', 'K', '46', '115.00', '$'], 
    ['5080015366', 'OMT', '03/10/2014', 'EB 65TH ST @ 16TH AV E', '7', '50.00', '$'], 
    ['7208770670', 'OMT', '04/08/2014', '333 15th St', 'K', '70', '65.00', '$'], 
    ['.00\n\n\nPayment Amount:']
]
로그인 후 복사

참고:

  • 출력의 마지막 행은 결제 금액이며 테이블에 포함되지 않습니다.
  • 각 행의 마지막 열은 입력 텍스트 상자를 나타내며 특별한 처리가 필요할 수 있습니다.

위 내용은 Python의 BeautifulSoup을 사용하여 테이블에서 특정 셀을 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿