[英]Execute python script on remote server via VB.Net and return result to local machine
问题如下:我的本地计算机(计算机A)在本地运行VB.Net代码。 我需要在另一台远程计算机(计算机B,Python脚本驻留在计算机B上)上运行Python脚本,并将结果返回计算机A, 最好不要让计算机B上的Python脚本将输出写入.csv文件(或类似的文件),然后计算机A读取该文件。 也就是说,我想完成以下工作:
(计算机A上的VB.Net代码)
matrixResult = getMatrixFromPython(args)
其中,函数getMatrixFromPython调用计算机B上的Python脚本,并返回该脚本生成的矩阵。 我当前的解决方案是使用WMI在远程计算机上执行.bat文件,然后该.bat文件又运行Python脚本。 但是,这留下了将结果返回到计算机A上的VB.Net代码的问题。
任何帮助,不胜感激。 谢谢。
您可以通过多种方式执行此操作。
您可以在VB.net中实现WCF服务,该服务执行python脚本并将结果传递回调用方
一种。 如果您使用ironpython直接运行它,而不是依赖于从process.start捕获输出然后将其解释回数据结构,则与python执行交互可能也更容易(尽管如果您必须走那条路线,那么我会建议使用JSON,因为.net和python中有可以读取/写入此格式的库)
使用powershell远程执行远程执行,这比使用wmi捕获输出要简单得多。 问题在于可能没有在需要安装的任何地方安装/配置它
将python脚本转换为作为CGI脚本运行,然后从Web服务器运行它。 这意味着调用它并获取输出就像获取URL一样简单
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.