[PYTHON] HTML 표를 JSON으로 변환
PYTHONHTML 표를 JSON으로 변환
내가 BeautifulSoup 통해 추출한 테이블을 JSON으로 변환하려고합니다.
지금까지는 모든 행을 분리 할 수 있었지만 여기에서 데이터를 처리하는 방법을 모르겠습니다. 어떤 조언을 주시면 감사하겠습니다.
[<tr><td><strong>Balance</strong></td><td><strong>$18.30</strong></td></tr>,
<tr><td>Card name</td><td>Name</td></tr>,
<tr><td>Account holder</td><td>NAME</td></tr>,
<tr><td>Card number</td><td>1234</td></tr>,
<tr><td>Status</td><td>Active</td></tr>]
(라인은 가독성을 위해 내 파열)
이것은 나의 시도였다 :
result = []
allrows = table.tbody.findAll('tr')
for row in allrows:
result.append([])
allcols = row.findAll('td')
for col in allcols:
thestrings = [unicode(s) for s in col.findAll(text=True)]
thetext = ''.join(thestrings)
result[-1].append(thetext)
그것은 나에게 다음과 같은 결과를 주었다.
[
[u'Card balance', u'$18.30'],
[u'Card name', u'NAMEn'],
[u'Account holder', u'NAME'],
[u'Card number', u'1234'],
[u'Status', u'Active']
]
해결법
-
==============================
1.아마도 귀하의 데이터는 다음과 같습니다.
아마도 귀하의 데이터는 다음과 같습니다.
html_data = """ <table> <tr> <td>Card balance</td> <td>$18.30</td> </tr> <tr> <td>Card name</td> <td>NAMEn</td> </tr> <tr> <td>Account holder</td> <td>NAME</td> </tr> <tr> <td>Card number</td> <td>1234</td> </tr> <tr> <td>Status</td> <td>Active</td> </tr> </table> """
이 코드를 사용하여 결과를 목록으로 얻을 수 있습니다.
from bs4 import BeautifulSoup table_data = [[cell.text for cell in row("td")] for row in BeautifulSoup(html_data)("tr")]
주문을 신경 쓰지 않으면 결과를 JSON으로 변환하려면 다음을 수행하십시오.
import json print json.dumps(dict(table_data))
결과:
{ "Status": "Active", "Card name": "NAMEn", "Account holder": "NAME", "Card number": "1234", "Card balance": "$18.30" }
동일한 주문이 필요한 경우 다음을 사용하십시오.
from collections import OrderedDict import json print json.dumps(OrderedDict(table_data))
어느 것이 당신을 준다 :
{ "Card balance": "$18.30", "Card name": "NAMEn", "Account holder": "NAME", "Card number": "1234", "Status": "Active" }
from https://stackoverflow.com/questions/18544634/convert-a-html-table-to-json by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 파이썬 : 한 사전이 다른 큰 사전의 하위 집합인지 확인하십시오 (0) | 2018.11.16 |
---|---|
[PYTHON] 왜 클래스 __dict__는 mappingproxy입니까? (0) | 2018.11.16 |
[PYTHON] 파이썬에서 나선형 배열을 만드는가? (0) | 2018.11.16 |
[PYTHON] Django 전환, 코드 블록을위한 언어 전환, 하나의 언어로 번역 수행 (0) | 2018.11.16 |
[PYTHON] 파이썬에서 XML을 JSON으로 변환하는 방법은 무엇입니까? [복제] (0) | 2018.11.16 |