猿问

使用 pandas 和 bs4 解析抓取网页的输出:使输出更具可读性的方法?

我想抓取这个页面。


我写了这段代码:


import pandas as pd

import requests

from bs4 import BeautifulSoup


res = requests.get("http://yadamp.unisa.it/showItem.aspx?yadampid=18")

soup = BeautifulSoup(res.content,'lxml')

table = soup.find_all('table')[0] 

df = pd.read_html(str(table))

print(df[0].to_json(orient='records'))

但输出并不理想。

你可以看到我很难理解这个列表,因为我必须遍历一个包含多个字典的列表,然后将成对的键连接在一起。我希望输出更像是:


ID 18

Name Colutellin-A

Helicity 85.7

等等......只是一些更具可读性的东西。任何人都可以指出我应该更改以改进此代码的一部分吗?


谢谢


小怪兽爱吃肉
浏览 204回答 1
1回答

慕盖茨4494581

您可以使用 pandasread_html()获取表格,然后使用 pandas 导航表格DataFrame(),请参阅下面的代码!url = 'http://yadamp.unisa.it/showItem.aspx?yadampid=18'table = pd.read_html(url, attrs={    'class': 'table table-responsive'}, header=0)print(pd.DataFrame(table[0]))
随时随地看视频慕课网APP

相关分类

Python
我要回答