我想通过OPeNDAP作为一个xarray.Dataset访问多个MODIS产品,例如,MOD13Q1 tiles发现了这里。但是,我遇到了一些问题,我认为这些问题与身份验证有某种关系。对于不需要身份验证的数据源,一切正常。例如:
data = xr.open_dataset('https://dods.ndbc.noaa.gov/thredds/dodsC/data/stdmet/44065/44065.ncml')没有问题就跑。然而,对于NASA地球数据,我需要提供一个用户名和密码。XArray文档指出了pydap提供的一个名为setup_session的函数,正如他们在他们的文件中解释的那样,它是专门为美国宇航局地球数据提供的:
from pydap.client import open_url
from pydap.cas.urs import setup_session
dataset_url = 'https://opendap.cr.usgs.gov/opendap/hyrax/MOD13Q1.061/h01v10.ncml'
session = setup_session('my_username', 'my_password', check_url=dataset_url)
dataset = open_url(dataset_url, session=session)这在setup_session行上产生了以下错误:
UserWarning:导航到https://opendap.cr.usgs.gov/opendap/hyrax/MOD13Q1.061/h01v10.ncml,登录并按照说明进行操作。很可能在访问这些数据之前,您必须执行一些一次性注册步骤。
很不幸,导航到给定的url并不能解决任何问题。我也很有信心,我已经批准了正确的应用程序在我的美国宇航局地球数据配置文件页面(例如,我已经批准了LP DAAC OPeNDAP)。
如有任何建议或解决方案,将不胜感激!
发布于 2022-03-16 06:14:01
在填写表单并请求一些数据之前,ncml数据页不会要求您登录。我尝试了一个登录url,它请求ASCII中最小的数据片段。那时候似乎很管用。
login_url = "https://opendap.cr.usgs.gov/opendap/hyrax/MOD13Q1.061/h01v10.ncml.ascii?YDim[0],XDim[0],time[0]"
dataset_url = 'https://opendap.cr.usgs.gov/opendap/hyrax/MOD13Q1.061/h01v10.ncml'
session = setup_session('my_username', 'my_password', check_url=login_url)
dataset = open_url(dataset_url, session=session)https://stackoverflow.com/questions/71485068
复制相似问题