When performing the tutorial for Refinitiv Data Library for Python I did all according to the suggestions. I created a config-file with the credentials (I checked: they are correct!) and in the Quickstart tutorial I tried QS_1.0 - Sessions.ipynb.
At the rd.open_session() statement I get a lot of errors, ending with the "RDError: Error code 0 | Error happened during config file ../Configuration\refinitiv-data.config.json read"
But the config file is in the path.
I have refinitiv data version 1.3.0.
I want a platform session.
This is the file refinitiv-data.config.json:
{
"logs": {
"level": "debug",
"transports": {
"console": {
"enabled": true
},
"file": {
"enabled": false,
"name": "refinitiv-data-lib.log"
}
}
},
"sessions": {
"default": "platform.rdp",
"platform": {
"rdp": {
"app_key": "53xxxxxxxxxxxxxxxx",
"username": "xxxxxxx",
"password": "xxxxxxxx"
},
},
"desktop": {
"workspace": {
"app-key": "YOUR APP KEY GOES HERE!"
}
}
}
}
So what is the reason for this problem?
--------------------------------------------------------------------------- JSONDecodeError Traceback (most recent call last) File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_configure.py:91, in _read_config_file(path) 90 with open(path, "r") as f: ---> 91 data = json.load(f, cls=_JSONDecoder) 92 except FileNotFoundError: File ~\anaconda3\envs\refinitiv\Lib\json\__init__.py:293, in load(fp, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw) 276 """Deserialize ``fp`` (a ``.read()``-supporting file-like object containing 277 a JSON document) to a Python object. 278 (...) 291 kwarg; otherwise ``JSONDecoder`` is used. 292 """ --> 293 return loads(fp.read(), 294 cls=cls, object_hook=object_hook, 295 parse_float=parse_float, parse_int=parse_int, 296 parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw) File ~\anaconda3\envs\refinitiv\Lib\json\__init__.py:359, in loads(s, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw) 358 kw['parse_constant'] = parse_constant --> 359 return cls(**kw).decode(s) File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_configure.py:140, in _JSONDecoder.decode(self, s, _w) 139 s = s.replace("\\", "\\\\") --> 140 return super().decode(s, _w) File ~\anaconda3\envs\refinitiv\Lib\json\decoder.py:337, in JSONDecoder.decode(self, s, _w) 333 """Return the Python representation of ``s`` (a ``str`` instance 334 containing a JSON document). 335 336 """ --> 337 obj, end = self.raw_decode(s, idx=_w(s, 0).end()) 338 end = _w(s, end).end() File ~\anaconda3\envs\refinitiv\Lib\json\decoder.py:353, in JSONDecoder.raw_decode(self, s, idx) 352 try: --> 353 obj, end = self.scan_once(s, idx) 354 except StopIteration as err: JSONDecodeError: Expecting property name enclosed in double quotes: line 23 column 9 (char 561) The above exception was the direct cause of the following exception: RDError Traceback (most recent call last) Cell In[13], line 1 ----> 1 rd.open_session() File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_fin_coder_layer\session.py:43, in open_session(***failed resolving arguments***) 41 _definition = Definition 42 _load_config = load_config ---> 43 _config_object = get_config() 44 _set_default = set_default 45 return _open_session(**locals()) File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_config_functions.py:16, in get_config() 10 def get_config() -> RDConfig: 11 """ 12 Returns 13 ------- 14 config object 15 """ ---> 16 return _get_config() File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_configure.py:442, in get_config() 432 """ 433 Gets the whole config or create it if it does not exist. 434 (...) 439 440 """ 441 if _config is None: --> 442 reload() 443 return _config File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_configure.py:508, in reload() 495 _project_config_dir = os.environ.get(_RDPLIB_ENV_DIR) or os.getcwd() 496 _config_files_paths = [ 497 c 498 for c in [ (...) 506 if c 507 ] --> 508 _config = _create_rdpconfig(_config_files_paths) 509 _config.load = _load_config_from_file 511 _observer = None File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_configure.py:110, in _create_rdpconfig(files_paths) 108 if isinstance(files_paths, str): 109 files_paths = [files_paths] --> 110 configs = _create_configs(files_paths) 111 return _RDPConfig(*configs) File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_configure.py:102, in _create_configs(files_paths) 100 def _create_configs(files_paths: List[str]): 101 config_from_dict = ext_config_mod.config_from_dict --> 102 dicts = [_read_config_file(f) for f in files_paths] + [_config_defaults.config] 103 configs = [config_from_dict(d) for d in dicts] 104 return configs File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_configure.py:102, in <listcomp>(.0) 100 def _create_configs(files_paths: List[str]): 101 config_from_dict = ext_config_mod.config_from_dict --> 102 dicts = [_read_config_file(f) for f in files_paths] + [_config_defaults.config] 103 configs = [config_from_dict(d) for d in dicts] 104 return configs File ~\anaconda3\envs\refinitiv\Lib\site-packages\refinitiv\data\_configure.py:95, in _read_config_file(path) 93 return {} 94 except Exception as exc: # noqa ---> 95 raise RDError(0, f"Error happened during config file {path} read") from exc 97 return _substitute_values(data, data) RDError: Error code 0 | Error happened during config file ../Configuration\refinitiv-data