我正在考虑使用X3270终端模拟器。我已经查看过这个源代码,但是我仍然不知道如何开始使用这个工具或者配置它。
我想知道我怎样才能打开终端和连接。另一个问题是如何将其集成到python程序中?
编辑:下面是一个片段:
em = Emulator()
em.connect(ip)
em.send_string('*user name*')
em.exec_command('Tab')
em.send_string('*user password*')
em.send_enter()
em.send_enter()
em.wait_for_field()
em.save_screen("{0}screenshot".format(*path*))查看保存屏幕,我看到光标没有移动吗?我可以使用
em.move_to(7,53)但在那之后我没有收到任何短信。有什么想法吗?
发布于 2013-08-06 14:56:25
请先阅读我上面的评论--如果你能更详细地了解你需要做什么,这将是有帮助的。
在考虑到…你看过https://pypi.python.org/pypi/py3270/0.1.5的https://pypi.python.org/pypi/py3270/0.1.5包了吗?总结说,它与x3270进行了对话。
发布于 2014-11-23 23:39:42
下面是我所做的,它在100%的时间里都能工作:
from py3270 import *
import sys, os
host = "%s" % sys.argv[1].upper()
try:
e = Emulator()
e.connect(host)
e.wait_for_field()
except WaitError:
print "py3270.connect(%s) failed" % (host)
sys.exit(1)
print "--- connection made to %s ---" % (host)`如果没有到主机的网络连接,那么wait_for_field()调用将等待整整120秒钟。无论我做什么,我似乎都不能影响超时的时间。
但是你的用户不必等那么久,只要让他用KeyboardInterrupt杀死你的脚本就行了。希望您的用户能够习惯于成功地显示“-建立了连接.”如果主人没有回应,他就会知道他有麻烦了。
这就是我需要指出的一点:您不是连接到终端(正如您所描述的那样),而是连接到主机。该主机可以是VTAM连接,也可以是某种LPAR,通常是TSO或z/VM,有时是CICS或IMS,VTAM将带您访问这些连接。每种主机都有不同的提示&屏幕内容,您可能需要测试这些内容,有时这些内容是不同的,这取决于您要连接到哪个系统。您的脚本将成为“终端”,这取决于您想要向用户展示什么。
接下来你需要做什么取决于你想要交谈的是哪种系统。通过VTAM?(首先需要选择一个VTAM应用程序?)到z/VM?左?您是登录还是DIALing?在使用图形x 3270/c 3270终端时,您必须使用的下一个击键/字段是什么?您需要知道这一点,以便选择下一个命令。
祝好运!
https://stackoverflow.com/questions/18054151
复制相似问题