LDError: 'dict' object has no attribute 'url'

Currently, I am encountering an error when using either rd
, or ld
while making data requests through the API gateway. The error is: "LDError: 'dict' object has no attribute 'url'"
. Please assist me with this issue.
Answers
-
Thank you for reaching out to us.
You may need to able the debug log in the library to verify what the problem is by using the following code.
config = ld.get_config() config.set_param("logs.transports.file.enabled", True) config.set_param("logs.transports.file.name", "lseg-data-lib.log") config.set_param("logs.level", "debug")
ld.open_session(….)The lseg-data-lib.log file will be created. We may be able to see the cause of the problem in the log file.
0 -
Yes, it seems the error continues.
I attached the log file.
0 -
Can you expand the Traceback… to see the code that causes this error?
0 -
AttributeError Traceback (most recent call last)
Cell In[1], line 6
4 config.set_param("logs.transports.file.name", "lseg-data-lib.log")
5 config.set_param("logs.level", "debug")
----> 6 ld.open_session()File D:\news.venv\Lib\site-packages\lseg\data_access_layer\session.py:91, in open_session(name, app_key, config_name)
88 set_default(new_session)
89 default_session = new_session
---> 91 default_session.open()
93 return default_sessionFile D:\news.venv\Lib\site-packages\lseg\data_core\session_session.py:374, in Session.open(self)
372 self._call_on_state("Session opening in progress")
373 self._config.on(configure.ConfigEvent.UPDATE, self._on_config_updated)
--> 374 self._http_service.open()
375 is_opened = self._connection.open()
377 if is_opened:File D:\news.venv\Lib\site-packages\lseg\data_core\session\http_service.py:334, in HTTPService.open(self)
333 def open(self):
--> 334 self._client.open()File D:\news.venv\Lib\site-packages\lseg\data_core\session\http_service.py:187, in HTTPClient.open(self)
183 proxies = self._session._proxies.get_proxy_for_httpx()
185 # httpx has its default Accept header and
186 # server wants application/json or nothing
--> 187 self._client = get_httpx_client(
188 headers={"Accept": APPLICATION_JSON},
189 limits=limits,
190 proxies=proxies,
191 )
193 key = configure.keys.http_auto_retry_config
194 auto_retry_config = config.get(key, None)File D:\news.venv\Lib\site-packages\lseg\data_core\session\http_service.py:160, in get_httpx_client(proxies, **kwargs)
158 def get_httpx_client(proxies, **kwargs):
159 if httpx.version >= "0.26.0":
--> 160 client = httpx.Client(proxy=proxies, **kwargs)
161 else:
162 client = httpx.Client(proxies=proxies, **kwargs)File D:\news.venv\Lib\site-packages\httpx_client.py:697, in Client.init(self, auth, params, headers, cookies, verify, cert, trust_env, http1, http2, proxy, mounts, timeout, follow_redirects, limits, max_redirects, event_hooks, base_url, transport, default_encoding)
686 proxy_map = self._get_proxy_map(proxy, allow_env_proxies)
688 self._transport = self._init_transport(
689 verify=verify,
690 cert=cert,
(...)
695 transport=transport,
696 )
--> 697 self._mounts: dict[URLPattern, BaseTransport | None] = {
698 URLPattern(key): None
699 if proxy is None
700 else self._init_proxy_transport(
701 proxy,
702 verify=verify,
703 cert=cert,
704 trust_env=trust_env,
705 http1=http1,
706 http2=http2,
707 limits=limits,
708 )
709 for key, proxy in proxy_map.items()
710 }
711 if mounts is not None:
712 self._mounts.update(
713 {URLPattern(key): transport for key, transport in mounts.items()}
714 )File D:\news.venv\Lib\site-packages\httpx_client.py:700, in <dictcomp>(.0)
686 proxy_map = self._get_proxy_map(proxy, allow_env_proxies)
688 self._transport = self._init_transport(
689 verify=verify,
690 cert=cert,
(...)
695 transport=transport,
696 )
697 self._mounts: dict[URLPattern, BaseTransport | None] = {
698 URLPattern(key): None
699 if proxy is None
--> 700 else self._init_proxy_transport(
701 proxy,
702 verify=verify,
703 cert=cert,
704 trust_env=trust_env,
705 http1=http1,
706 http2=http2,
707 limits=limits,
708 )
709 for key, proxy in proxy_map.items()
710 }
711 if mounts is not None:
712 self._mounts.update(
713 {URLPattern(key): transport for key, transport in mounts.items()}
714 )File D:\news.venv\Lib\site-packages\httpx_client.py:750, in Client._init_proxy_transport(self, proxy, verify, cert, trust_env, http1, http2, limits)
740 def _init_proxy_transport(
741 self,
742 proxy: Proxy,
(...)
748 limits: Limits = DEFAULT_LIMITS,
749 ) -> BaseTransport:
--> 750 return HTTPTransport(
751 verify=verify,
752 cert=cert,
753 trust_env=trust_env,
754 http1=http1,
755 http2=http2,
756 limits=limits,
757 proxy=proxy,
758 )File D:\news.venv\Lib\site-packages\httpx_transports\default.py:168, in HTTPTransport.init(self, verify, cert, trust_env, http1, http2, limits, proxy, uds, local_address, retries, socket_options)
155 if proxy is None:
156 self._pool = httpcore.ConnectionPool(
157 ssl_context=ssl_context,
158 max_connections=limits.max_connections,
(...)
166 socket_options=socket_options,
167 )
--> 168 elif proxy.url.scheme in ("http", "https"):
169 self._pool = httpcore.HTTPProxy(
170 proxy_url=httpcore.URL(
171 scheme=proxy.url.raw_scheme,
(...)
185 socket_options=socket_options,
186 )
187 elif proxy.url.scheme in ("socks5", "socks5h"):AttributeError: 'dict' object has no attribute 'url'
0 -
Thank you for the information.
According to the Traceback, it may relate to the proxy settings on your machine.
File D:\news.venv\Lib\site-packages\httpx_transports\default.py:168, in HTTPTransport.init(self, verify, cert, trust_env, http1, http2, limits, proxy, uds, local_address, retries, socket_options)
155 if proxy is None:
156 self._pool = httpcore.ConnectionPool(
157 ssl_context=ssl_context,
158 max_connections=limits.max_connections,
(...)
166 socket_options=socket_options,
167 )
--> 168 elif proxy.url.scheme in ("http", "https"):
169 self._pool = httpcore.HTTPProxy(
170 proxy_url=httpcore.URL(
171 scheme=proxy.url.raw_scheme,
(...)
185 socket_options=socket_options,
186 )
187 elif proxy.url.scheme in ("socks5", "socks5h"):
AttributeError: 'dict' object has no attribute 'url'It looks like it was unable to access the url property from the proxy object.
You can check you proxy settings and run the following command.
from httpx._utils import get_environment_proxies get_environment_proxies()
1
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 684 Datastream
- 1.4K DSS
- 615 Eikon COM
- 5.2K Eikon Data APIs
- 10 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 250 ETA
- 555 WebSocket API
- 37 FX Venues
- 14 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 23 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 275 Open PermID
- 44 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 22 RDMS
- 1.9K Refinitiv Data Platform
- 643 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 193 TREP Infrastructure
- 228 TRKD
- 915 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 90 Workspace SDK
- 11 Element Framework
- 5 Grid
- 18 World-Check Data File
- 1 Yield Book Analytics
- 46 中文论坛