gpt4 book ai didi

Python 抓取 Html 的问题

转载 作者:行者123 更新时间:2023-11-30 22:48:03 25 4
gpt4 key购买 nike

我目前正在尝试收集我的互联网提供商的数据使用情况。我尝试寻找某种 api,但他们没有。我正在采取抓取 html 的方式,看起来像这样

</tr><tr class="top-border"><td>17&nbsp;&nbsp;Monday</td><td class='text-right'><span class='mb'>2,991.69&nbsp;MB</span><span class='gb'>2.92&nbsp;GB</span></td></td><td class='text-right'><span class='mb'>1,232.04&nbsp;MB</span><span class='gb'>1.20&nbsp;GB</span></td></td><td class='text-right'><span class='mb'>4,223.73&nbsp;MB</span><span class='gb'>4.12&nbsp;GB</span></td>         <td>
<div class="progress"><div class="bar bar-success" style="width: 51%;"></div></div> </td>

</tr><tr><td>18&nbsp;&nbsp;Tuesday</td><td class='text-right'><span class='mb'>3,589.42&nbsp;MB</span><span class='gb'>3.51&nbsp;GB</span></td></td><td class='text-right'><span class='mb'>1,199.58&nbsp;MB</span><span class='gb'>1.17&nbsp;GB</span></td></td><td class='text-right'><span class='mb'>4,789.00&nbsp;MB</span><span class='gb'>4.68&nbsp;GB</span></td> <td>
<div class="progress"><div class="bar bar-success" style="width: 57%;"></div></div> </td>

我尝试使用 pythons re.search 但只能从中获取一些信息。例如:

search = re.search("class='gb'>(.*)&nbsp;GB</span>",raw_info)
for i in range(0,100):
try:
print(search.group(i))
except:
break

输出:

class='gb'>6.88&nbsp;GB</span></td></td><td class='text-right'><span class='mb'>
1,295.90&nbsp;MB</span><span class='gb'>1.27&nbsp;GB</span></td></td><td class='
text-right'><span class='mb'>8,340.12&nbsp;MB</span><span class='gb'>8.14&nbsp;G
B</span>
6.88&nbsp;GB</span></td></td><td class='text-right'><span class='mb'>1,295.90&nb
sp;MB</span><span class='gb'>1.27&nbsp;GB</span></td></td><td class='text-right'
><span class='mb'>8,340.12&nbsp;MB</span><span class='gb'>8.14

我了解到我不能使用这样的组来打印所有数字

tldr:我需要打印所有引用 gb 的数字并像这样打印它们

2.92,1.20,4.12

3.51,1.17,4.68

最佳答案

您可能想尝试使用 BeautifulSoup ,这是一个非常灵活的库,可以完全满足您的需求。

html = scraped
soup = BeautifulSoup(html)
spans = soup.findAll('span', attrs={'class': 'gb'})

然后,您将获得所有具有 gb 类的 span 标记的列表。生成数字并将它们转换为 float ,然后应用您想要打印它们的任何格式,这非常简单。

关于Python 抓取 Html 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40312834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com