Refinitiv Python Connection Open session HTTTP Request id 0; get_date failed

Hello,

I'm using Python and connecting to Refinitv.data.

The script is run by Task Scheduler, after rd.open_session(), the get_data() function is failed to perform. It worked well when I'm using Jupyter. Below is the message.


Would anyone be able to help me with the issue.

Thank you for your help.


Best,

Tim

annotation-2024-09-02-092554.png


Answers

  • Hi @Tim Lai,

    The message `'x-tr-applicationid': 'DEFAULT_WORKSPACE_APP_KEY'` is making me think that you may not have entered the correct App Key in your configuration file, if you are using one. For more info on the configuration file, I'd advise reading:
    (i) LSEG’s Refinitiv Data Library for Python and its Configuration Process

    (ii) LSEG Data Library for Python: Getting Started with Python

    I would advise upgrading to the LDL and checking your configuration file and the App Key in it.

  • Hi Jonathan, thanks for your help.


    My script runs successfully on Jupyter Notebook with the exact same config file; while the one ran by a prompt called by Task Scheduler failed. The codes are exactly the same. I checked the app key is enabled and correct. I wonder what caused the issue. Thanks!

  • Hi @Tim Lai, then I'm afraid it's something to do with the trigger. I tested it on my end and the following worked via Task Scheduler prompts:


    import lseg.data as ld
    import time
    import logging

    print('imports worked')

    time.sleep(1)

    path = "C://Users//john//Desktop//Desktop//"

    # Configure logging
    logging.basicConfig(
    filename=path + 'error_log.txt',
    level=logging.ERROR,
    format='%(asctime)s:%(levelname)s:%(message)s')

    print('Configuration worked')

    time.sleep(1)

    ld.open_session()

    print('ld.open_session worked')

    time.sleep(1)

    df = ld.get_history('LSEG.L')

    print(df.iloc[0])

    time.sleep(1)

    # Save DataFrame to a text file
    df.to_csv(
    path_or_buf=path + "LD_printout_via_task_scheduler_test.csv",
    # sep='\t',
    index=False)

    print("DataFrame has been written to LD_printout_via_task_scheduler_test.txt")

    time.sleep(1)

    ld.close_session()


    Looking at the output in the screenshot you shared above, I can tell that the app key used is incorrect. You can find information on how you can find your app key here: Quick Start | Devportal (lseg.com)


    In your code, please use a line like:


    ld.open_session(
        config_name="C:\Example.DataLibrary.Python-main\Configuration\lseg-data.config2.json",
        name="desktop.workspace")


    and point to your json configuration file directly; it does look like the default is not the one where you entered your app key, but instead it is one where the app key 'DEFAULT_WORKSPACE_APP_KEY' is written, which cannot be the correct app key.