努力使用 python 从网站获取数据

Struggling to grab data from website using python

我正在尝试从该站点的国家气象局获取降雪数据:

https://www.nohrsc.noaa.gov/snowfall/

可以通过网页下载数据,下拉列表中的文件类型带有 'click',但我似乎无法弄清楚如何使用 python 自动执行此操作。他们有一个 ftp 存档,但它需要登录,但出于某种原因我无法访问它。

但是,既然可以通过网页界面上的“点击”来下载文件,我想一定有办法使用wget或urlopen来抓取它吧?但我似乎无法弄清楚在这种情况下确切的 url 地址是什么才能使用这些功能。有没有人知道如何直接从上面列出的网站下载这些数据?

谢谢!

您可以使用 Chrome 控制台检查链接。

按 F12,然后单击文件类型:

这里是URLhttps://www.nohrsc.noaa.gov/snowfall/data/202112/sfav2_CONUS_6h_2021122618_grid184.nc

您可以使用 Requests

python 下载它
import requests

r = requests.get('https://www.nohrsc.noaa.gov/snowfall/data/202112/sfav2_CONUS_6h_2021122618_grid184.nc')

data = r.content # file context

或者您可以使用 urlretrieve

将其保存到文件中
from urllib.request import urlretrieve
url = 'https://www.nohrsc.noaa.gov/snowfall/data/202112/sfav2_CONUS_6h_2021122618_grid184.nc'
dst = 'data.nc'
urlretrieve(url, dst)