Python请求输出与预期输出不同

时间:2020-01-17 01:15:27

标签: python python-requests

我正在尝试从以下site上刮掉Generation表。

我有以下代码:

import requests
from bs4 import BeautifulSoup

source = requests.get('http://reneweconomy.com.au/nem-watch/', headers={'User-Agent': 'Mozilla/5.0'})
soup = BeautifulSoup(source.text, 'html.parser')

table = soup.table["database table"].strip()
print(table)

但是,此代码无法在抓取的页面中找到任何表,即使通过检阅时该表显然在该表中也是如此。 Inspect 这可能是网站无法正确报废的问题吗?

谢谢

1 个答案:

答案 0 :(得分:2)

此页面使用provider "azurerm"加载数据并创建表。

在Firefox / Chrome中使用JavaScript,我发现它是从

加载的

https://ausrealtimefueltype.global-roam.com/api/SeriesSnapshot?time=

作为JSON数据


DevTools

结果

import requests

headers = {'User-Agent': 'Mozilla/5.0'}

url = 'https://ausrealtimefueltype.global-roam.com/api/SeriesSnapshot?time='

r = requests.get(url,  headers=headers)
data = r.json()

for item in data['seriesCollection']:
    #for key, value in item.items():
    #    print(key, value)
    print('region:', item['metadata']['region']['name'])
    print('fuel type:', item['metadata']['fuelType']['name'])
    print('value:', item['value'])
    print('---')