Сценарий My Automation выполняется с использованием Python, и мне нужно управлять spirent Testcenter (который поддерживает только tcl). я могу общаться с Spirent через Tcl скрипт, если я называю тот же сценарий с помощью питона я получаю ошибку нижезапуск скрипта tcl через python
TCL Файл - Stc1.tcl
package require SpirentTestCenter
source [ file join [ file dirname [ info script ] ] {ipv6_max_session_header.tcl} ]
puts "SpirentTestCenter system version:\t[stc::get system1 -Version]"
Python Файл - tcl_py.py
import Tkinter
import os
r=Tkinter.Tk()
r.tk.eval('source Stc_1.tcl')
Ошибка, что я получаю -
C:\Python27\MyScripts>python tcl_py.py
Traceback (most recent call last):
File "tcl_py.py", line 5, in <module>
r.tk.eval('source Stc_1.tcl')
_tkinter.TclError: can't find package SpirentTestCenter
Если SpirentTestCenter является включенным пакетом, вы можете просто добавить правильный путь, в котором файл pkgIndex.tcl пакета находится в переменной ':: auto_path' в Tcl, и он может загружаться. Но это может быть испечено в интерпретаторе tcl также как статический пакет, так называемый bigshell, если это так, вы не можете (легко) использовать его в tkinter, не достраивая tkinter к этой версии Tcl. – schlenk
Можете ли вы использовать подпроцесс для создания Stc1.tcl? –
Спасибо за ваши ребята. Я смог выполнить скрипт TCL с использованием подпроцесса Python. – hariudkmr