我正在嘗試從 https://il.water.usgs.gov/gmaps/precip/抓取一些資料。我只想要名為“伊利諾伊州芝加哥市平湯姆公園的雨量計”行中的特定單元格。只有包含 1、3 和 12 小時降雨預測的單元格。我應該修復什么?
import pandas as pd
url = "https://il.water.usgs.gov/gmaps/precip/"
df = pd.read_html(url, flavor="bs4")[0]
print(df.loc[df[0] == "RAIN GAGE AT PING TOM PARK AT CHICAGO, IL"])
uj5u.com熱心網友回復:
資料從另一個回傳 JSON 的端點動態檢索。您可以撰寫一個呼叫該端點的函式并傳入位置和所需的時間
def get_precipitation(location:str, hrs:list):
import requests
url = "https://il.water.usgs.gov/gmaps/precip/data/rainfall_outIL_WSr2.json"
r = requests.get('https://il.water.usgs.gov/gmaps/precip/data/rainfall_outIL_WSr2.json').json()
data = [i for i in r['value']['items'] if i['title'] == location][0]
for k,v in data.items():
if k in hrs:
print(f'{k}={v}')
if __name__ == "__main__":
location = "RAIN GAGE AT PING TOM PARK AT CHICAGO, IL"
hrs = ['precip1hrvalue', 'precip3hrvalue', 'precip12hrvalue']
get_precipitation(location, hrs)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/439585.html
