最近更新 > 第三方交互

2019-05-08-应用专题-第三方交互07:天软平台和PYTHON的交互    

  • 2019-08-19-深圳天软科技-应用专题-第三方交互07:天软平台和PYTHON的交互
    附件:2025-09-24-深圳天软科技-应用专题-第三方交互07:天软平台和PYTHON的交互.pdf
    tslclient.ini文件范例:附件:tslclient.ini

    更新日志:
    更新日期更新说明
    2025-09-24新增FAQ:天软调用Python常见报错
    2025-03-27新增对Python3.13、Python3.14的支持
    2024-11-251、调整文档结构
    2、修改部分范例
    2024-03-28Python调用TSL支持直接加载模块,无需修改包名
    如,支持直接import TSLPy310 加载对应的包
    2023-11-30修正PyRun说明并添加范例
    2023-07-061、TSL调用Python中配置新增unicode参数
    2、TSL调用Python中PyCall函数支持命名参数
    3、新增TSL调用Python sklearn机器学习接口
    2021-04-121、天软调用Python时不支持网格调用的说明FAQ
    2、补充Python调天软时报错返回的具体报错码及对应的错误信息
    2021-01-181、新增常见交互异常问题的处理FAQ
    2、补充天软调Python的重要配置步骤
    3、补充Python转码参考实现模型tsbytestostr,对非法字符的异常处理(忽略非法字符)
    2020-10-05调整文档重点说明
    2020-07-24新增TSL数据转换方法:Exportjsonstring,将天软返回的结果转换成JSON字符串传到Python中,解决不同编码转换的问题。一般的做法,在TSL中对返回结果data通过函数exportjsonstring(data)转换成json串后返回,再在Python对json串进行解码
    2019-12-20修改落地服务配置步骤,新增某些场景下的配置及异常说明
    2019-08-191、新增TSL调用Python的函数PyError()说明及范例
    2、新增注意事项本地Python版本切换注意系统环境变量PYTHONHOME的更改
    3、新增落地服务器开启Python服务的配置方式及范例
    2019-07-251、新增Python调用天软的两个取数范例:
    1)3.3.2 两种方式取截面数据包括基本面数据,财务数据,行情数据
    2)3.3.3 两种方式取行情数据的时间序列数据
    2、新增天软调用Python时重载Python模块,清除变量的方法及范例
    2019-07-15新增TSL通过do Python方式执行Python脚本
    2019-05-081、添加Python调用天软配置说明
    2、添加PYTHONPATH配置
    3、添加字符串转换Python2的版本限制


    文档内容包括:
    1、如何在TSL中调用Python
    (1)修改包名:修改天软安装路径下的TSLPy.PYD包名,如使用Python3.12请将TSLPy312.PYD改名为TSLPy3.PYD;
    (2)设置系统环境变量:将天软安装路径、Python的DLLs文件路径、Python的dll文件路径添加到系统环境变量path中;
    (3)配置FileMgr.ini文件:在FileMgr.ini文件中,添加以下内容:
      [Python Config]
      Enabled=1
      version=3
    (4)使用PyPutVar等接口或者通过do Python方式调用Python。

    2、如何在Python调用TSL?
    (1)直接加载模块或者修改包名:
      1)直接加载模块:如使用Python3.12直接使用import TSLPy312即可;
      2)修改包名:修改天软安装路径下的TSLPy.PYD包名,如使用Python3.12请将TSLPy312.PYD改名为TSLPy3.PYD;
    (2)设置系统环境变量:
      1)将天软安装路径添加到系统环境变量path中;
      2)新建名为PYTHONPATH的系统环境变量,变量值为天软安装路径
    (3)通过COM方式或者DefaultConnectAndLogin等函数登录天软服务器,使用RemoteExecute、RemoteCallFunc等接口调用TSL。

    摘要
    1.多种交互方式:
    1)、TSL调用Python
      A、使用函数,如:PyPutVar(送入数据)、PyRun(执行脚本)、PyGetVar(获取数据)等
      B、使用do Python模式
    2)、Python调用TSL
      A、COM方式:交互时打开客户端登录账户,通过COM接口实现交互
      B、远程登录方式:交互时不打开客户端,通过账户密码直接登录天软服务器
         a、通过配置文件登录
         b、通过函数设置账户、密码登录
      C、通过RemoteCallFunc调用天软函数,RemoteExecute执行天软脚本
    3)、落地服务器开启Python服务
    4)、其他交互方式,不在本文档中进行说明
       ODBC:http://www.tinysoft.com.cn/tsdn/helpdoc/display.tsl?id=15297
       pyTSL:http://www.tinysoft.com.cn/tsdn/helpdoc/display.tsl?id=17395
    2.注意事项
      1)默认TSLPy3.PYD支持Python 3.4、TSLPy2.PYD支持Python 2.7。如果使用Python3.5请将TSLPy35.PYD改名为TSLPy3.PYD;
      2)注意模块名称的大小写;
      3)当TSLPy模块存在更新时,建议使用最新版本的TSLPy模块,否则可能会导致部分TSL调用Python的函数出错,例如PyError()。
      4)TSL和Python的位数应该对应,不可混用;
      5)当安装多个版本的Python时,如果要进行Python版本的切换,除了修改TSLPy模块外,还需修改环境变量PYTHONHOME,将环境变量中的Python路径修改为当前版本的Python路径;
      6)Python远程调用天软取数据的时候请设置系统参数;
      7)基础类型会自动转换,但自定义类型则需要用户自行将其转换为基础类型,文档附录中有实现方法;
      8)Python和天软的安装目录都请添加到系统环境变量中;
      9)如果远程调用无法执行,可以重启Python后再尝试;
      10)某些Python编辑器(如pycharm)可能会有缓存导致调用不成功,可以清除缓存后再尝试;
      11)在客户端编辑.py文件,将自动以UTF8的格式存贮,以吻合目前Python的默认编码为UTF8格式;
      12)天软调用Python的时候无法进行网格调用,详见文档中FAQ说明:天软调用Python的时候不支持网格调用。