[英]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.