TypeError:python cdsapi中不可调用“tuple”对象

2024-06-17 13:28:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在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

我已按照以下链接中的建议注册并安装了cdsapi客户端密钥

https://cds.climate.copernicus.eu/api-how-to

我的简单代码snipet如下所示

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')

这是怎么回事


Tags: appsinpygnuapihomeeggrequest
3条回答

问题解决了。 ~/.cdsapirc文件中存在问题,需要正确配置。 配置后,程序运行良好

如果您已登录,instructions中不太明显,但在.cdsapirc文件的key字段下,您需要用户ID和api密钥,如下所示:

key: $user_id:$api_key

我也遇到了这个问题,通过添加我的用户ID解决了这个问题

我也有同样的问题。登录哥白尼网站并接受以下URL中的许可条款后,我的问题得到解决:

https://cds.climate.copernicus.eu/cdsapp/#!/terms/licence-to-use-copernicus-products

相关问题 更多 >