【问题标题】:Execute python script on remote server via VB.Net and return result to local machine通过 VB.Net 在远程服务器上执行 python 脚本并将结果返回到本地机器
【发布时间】:2014-06-29 08:59:56
【问题描述】:

问题如下: 我的本地机器(计算机 A)在本地运行 VB.Net 代码。我需要运行 Python 脚本 在另一台远程计算机(计算机 B,Python 脚本驻留在计算机 B)上并将结果返回到计算机 A,最好,计算机 B 上的 Python 脚本不会将输出写入 .csv 文件(或类似的)和计算机 A 然后读取该文件。 也就是说,我想完成以下工作:

(计算机A上的VB.Net代码)

matrixResult = getMatrixFromPython(args)

函数 getMatrixFromPython “调用”计算机 B 上的 Python 脚本并返回脚本生成的矩阵。 我当前的解决方案是使用 WMI 在远程机器上执行一个 .bat 文件,然后该 .bat 文件又运行 Python 脚本。但是,这会导致将结果返回给计算机 A 上的 VB.Net 代码的问题。

非常感谢任何帮助。 谢谢。

【问题讨论】:

    标签: python vb.net wmi


    【解决方案1】:

    您可以通过多种方式做到这一点。

    1. 您可以在 VB.net 中实现一个 WCF 服务,该服务执行 python 脚本并将结果传递回调用者

      一个。如果您使用 ironpython 直接运行它,而不是依赖于从 process.start 捕获输出然后将其解释回数据结构,那么 python 执行可能也更容易交互(尽管如果您必须走那条路线,那么我会建议使用 JSON,因为 .net 和 python 中有可以读/写这种格式的库)

    2. 使用 powershell remoting 执行远程执行,这将比使用 wmi 更简单地捕获输出。与此相关的问题可能是它没有在任何需要的地方安装/配置

    3. 将 python 脚本转换为 CGI 脚本并从 Web 服务器运行。这意味着调用它并获取输出就像获取 URL 一样简单

    【讨论】:

      猜你喜欢
      • 2013-08-16
      • 1970-01-01
      • 2017-09-08
      • 1970-01-01
      • 1970-01-01
      • 2013-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多