question

Upvotes
Accepted
15 3 8 7

Datastream DSWS Time out Error

Thank you for your hard work.

I'm currently using the Python API for Datastream DSWS, and I'm experiencing a timeout error when calling the Datastream object. I'm posting this question to inquire about the possible causes.


1698638961488.png

#productrefinitiv-data-platformdatastream-apipython apidsws-api
1698638961488.png (6.0 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
Accepted
76.8k 239 52 72

@sjh0724 @walter01

Thank you for reaching out to us.

I got a different error.

DEBUG:urllib3.connectionpool:https://product.datastream.com:443 "POST /DSWSClient/V1/DSService.svc/rest/GetToken HTTP/1.1" 200 None
WARNING:urllib3.connectionpool:Failed to parse headers (url=https://product.datastream.com:443/DSWSClient/V1/DSService.svc/rest/GetToken): [MissingHeaderBodySeparatorDefect()], unparsed data: 'X-Ds-Server : DSWP12\r\nDate: Mon, 30 Oct 2023 04:57:05 GMT\r\nContent-Length: 374\r\nX-DS-VIP: DS_Web_Prod_EXT-443\r\nStrict-Transport-Security: max-age=86400; includeSubDomains\r\nX-DS-TimeTaken: 3 ms\r\nX-DS-URID: 1698641826410066871498348\r\n\r\n'
Traceback (most recent call last):
  File "c:\python37\lib\site-packages\urllib3\connectionpool.py", line 469, in _make_request
    assert_header_parsing(httplib_response.msg)
  File "c:\python37\lib\site-packages\urllib3\util\response.py", line 91, in assert_header_parsing
    raise HeaderParsingError(defects=defects, unparsed_data=unparsed_data)
urllib3.exceptions.HeaderParsingError: [MissingHeaderBodySeparatorDefect()], unparsed data: 'X-Ds-Server : DSWP12\r\nDate: Mon, 30 Oct 2023 04:57:05 GMT\r\nContent-Length: 374\r\nX-DS-VIP: DS_Web_Prod_EXT-443\r\nStrict-Transport-Security: max-age=86400; includeSubDomains\r\nX-DS-TimeTaken: 3 ms\r\nX-DS-URID: 1698641826410066871498348\r\n\r\n'

Please run the following code before calling the datastream library to enable the debug log in the urllib3 library.

import logging
import http.client 
http.client.HTTPConnection.debuglevel = 1 
logging.basicConfig()
logging.getLogger().setLevel(logging.DEBUG)
requests_log = logging.getLogger("requests.packages.urllib3")
requests_log.setLevel(logging.DEBUG)
requests_log.propagate = True
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Thank you Jirapongse. I'm sharing the results of running the script as you guided.

1698642579167.png


1698642579167.png (36.8 KiB)

@sjh0724

Yes, it is the same error.

I assume that the headers format is incorrect.

1698643277431.png

I will contact the product team to verify what the problem is.

1698643277431.png (135.8 KiB)

@sjh0724

I tested it again. I think the probelm has been resolved.

Could you please confirm if the problem has been resolved?

Thank you very much @Jirapongse .

The problem has been resolved. :)

Upvotes
1 0 0 2

We are seeing the same issue. From what I can tell, the config of the webserver must have changed. It would be great to get this fixed as we rely on the datastream rest api!

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.