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 중국어 웹사이트의 기타 관련 기사를 참조하세요!