我正在尝试借助 python 的 cdsapi 模块检索数据。但给出了以下错误
2020-10-19 12:55:52,780 INFO Sending request to https://cds.climate.copernicus.eu/api/v2/resources/reanalysis-era5-press
Traceback (most recent call last):
File "cds.py", line 10, in <module>
}, 'download.grib')
File "build/bdist.linux-x86_64/egg/cdsapi/api.py", line 229, in retrieve
File "build/bdist.linux-x86_64/egg/cdsapi/api.py", line 241, in _api
File "build/bdist.linux-x86_64/egg/cdsapi/api.py", line 358, in wrapped
File "/home/apps/SiteSoftwares/gnu/PYTHONPACKAGES/2.7.9/ucs4/gnu/4.8.5/REQUESTS/2.18.4/lib/python2.7/site-packages/req.4-py2.7.egg/requests/sessions.py", line 555, in post
return self.request('POST', url, data=data, json=json, **kwargs)
File "/home/apps/SiteSoftwares/gnu/PYTHONPACKAGES/2.7.9/ucs4/gnu/4.8.5/REQUESTS/2.18.4/lib/python2.7/site-packages/req.4-py2.7.egg/requests/sessions.py", line 494, in request
prep = self.prepare_request(req)
File "/home/apps/SiteSoftwares/gnu/PYTHONPACKAGES/2.7.9/ucs4/gnu/4.8.5/REQUESTS/2.18.4/lib/python2.7/site-packages/req.4-py2.7.egg/requests/sessions.py", line 437, in prepare_request
hooks=merge_hooks(request.hooks, self.hooks),
File "/home/apps/SiteSoftwares/gnu/PYTHONPACKAGES/2.7.9/ucs4/gnu/4.8.5/REQUESTS/2.18.4/lib/python2.7/site-packages/req.4-py2.7.egg/requests/models.py", line 309, in prepare
self.prepare_auth(auth, url)
File "/home/apps/SiteSoftwares/gnu/PYTHONPACKAGES/2.7.9/ucs4/gnu/4.8.5/REQUESTS/2.18.4/lib/python2.7/site-packages/req.4-py2.7.egg/requests/models.py", line 540, in prepare_auth
r = auth(self)
TypeError: 'tuple' object is not callable
Run Code Online (Sandbox Code Playgroud)
我已按照以下链接中的建议注册并安装 cdsapi 客户端密钥
https://cds.climate.copernicus.eu/api-how-to
我的简单代码片段如下所示
import cdsapi
cds = cdsapi.Client()
cds.retrieve('reanalysis-era5-pressure-levels', {
"variable": "temperature",
"pressure_level": "1000",
"product_type": "reanalysis",
"date": "2017-12-01/2017-12-31",
"time": "12:00",
"format": "grib"
}, 'download.grib')
Run Code Online (Sandbox Code Playgroud)
这有什么问题吗?
如果您已登录,从说明中看出来不是很明显,但在key文件字段下.cdsapirc,您需要用户ID 和 api 密钥,如下所示:
key: $user_id:$api_key
Run Code Online (Sandbox Code Playgroud)
我也遇到了这个问题,通过添加我的用户 ID 解决了它。
| 归档时间: |
|
| 查看次数: |
955 次 |
| 最近记录: |