gpt4 book ai didi

python - 使用 BeautifulSoup 解析网页上的表格

转载 作者:太空宇宙 更新时间:2023-11-04 11:09:39 28 4
gpt4 key购买 nike

尝试从网站 SGX 获取表格.

页面已保存到本地驱动器,我正在使用 BeautifulSoup 对其进行解析:

soup = BeautifulSoup(open(pages), "lxml")
soup.prettify()

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

它返回的不是页面的第一行:

[<tr><td>Zhongmin Baihui</td><td>5SR</td><td class="nowrap">09:44 AM</td><td class="nowrap">09:49 AM</td><td>0.615</td><td>0.675</td><td>0.555</td></tr>]

检索此表的正确方法是什么?

谢谢。

enter image description here

最佳答案

使用 AJAX 请求在页面加载后获取数据,通过检查页面您可以找到 API URL(下面的 Url),然后您可以使用类似的东西:

import pandas as pd
import requests
import json

response = requests.get('https://api.sgx.com/securities/v1.1?excludetypes=bonds&params=nc%2Cadjusted-vwap%2Cb%2Cbv%2Cp%2Cc%2Cchange_vs_pc%2Cchange_vs_pc_percentage%2Ccx%2Ccn%2Cdp%2Cdpc%2Cdu%2Ced%2Cfn%2Ch%2Ciiv%2Ciopv%2Clt%2Cl%2Co%2Cp_%2Cpv%2Cptd%2Cs%2Csv%2Ctrading_time%2Cv_%2Cv%2Cvl%2Cvwap%2Cvwap-currency')
data = json.loads(response.content)["data"]["prices"]
df = pd.DataFrame(data)
print(df)

如果您的要求很复杂并且您定期进行抓取,我建议您使用 scrapy。

关于python - 使用 BeautifulSoup 解析网页上的表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58619347/

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