Python将HTML表转换为JSON

时间:2019-01-18 22:00:35

标签: python json pandas

我有一个这样的html表。尝试使用pandas.read_html和beautifulsoup。真令人沮丧,请帮忙!

这是我的原始python代码:

url = 'http://financials.morningstar.com/ajax/keystatsAjax.html?t=wja&culture=en-CA&region=CAN'
lm_json = requests.get(url).json()
ksContent = BeautifulSoup(lm_json["ksContent"],"html.parser")
table = ksContent.find("table", {'class': "r_table1 text2"})
jsonD = json.dumps(table.text)
jsonL = json.loads(jsonD)

“表”将具有html表,但是json转换生成纯文本。

2 个答案:

答案 0 :(得分:1)

这可以使用python pandas解决:

const blob = new Blob( [ 'fooÀÂâà'.repeat( 10 ) ] );
const reader = new FileReader();

reader.addEventListener( 'load', (evt) => console.log( reader.result ) );

reader.readAsText( blob.slice( 0, 8 ) );

为我工作。

答案 1 :(得分:0)

jsonD = json.dumps(htmlContent.text)将原始HTML内容转换为JSON字符串表示形式。 jsonL = json.loads(jsonD)将JSON字符串解析回常规字符串/ unicode对象。这导致无操作,因为dumps()进行的任何转义都被loads()还原。 jsonL包含与htmlContent.text相同的数据。