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.
@sjh0724 @Walter Cavinaw
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 NoneWARNING: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 loggingimport 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
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!
Thank you Jirapongse. I'm sharing the results of running the script as you guided.