使用者的許多資料處理是透過 Python 腳本實現的,希望 FineDataLink 支援呼叫 Python 腳本。
新增「Python腳本」節點,支援直接呼叫 Python 腳本。
1)Python 腳本若放在 Linux 或者 mac 時,腳本路徑和參數值中禁止使用單引號'。
2)Python 腳本若放在 Windows 時,腳本路徑和參數值中禁止使用雙引號"。
3)若 FineDataLink 工程為 OPS 部署,腳本檔案不建議放在 OPS 的掛載目錄下,建議放在伺服器的獨立路徑下,例如/data/xxx。
否則,OPS 掛載目錄在大版本升級的時候名稱會變更,「Python腳本」將執行失敗。
透過 SSH 資料連結,直接呼叫 Python 腳本:
配置 Python 環境後,在「Python算子」中編寫 Python 程式碼實現
Python 腳本中儲存着學生成績資訊:
給 Python 腳本輸入學生姓名(本文範例中參數值為 John)參數,取出該學生成績,將取出的資料匯出到 test.txt 檔案中,test.txt 為自動建立的檔案,且與 Python 腳本在同一路徑下。
範例資料:Python脚本.zip、name.xls
注:本文的遠端伺服器中,Python 版本為 2.7.5,使用者若按照本文範例操作,可能需要修改腳本。
使用「Python腳本」節點執行 Python 腳本前,需要先配置 配置SSH協定資料連結,遠端連結目標伺服器。如下圖所示:
1)取出學生姓名資料。如下圖所示:
2)將取出的學生姓名資料作為參數匯出。
Python 腳本中接收的參數名為 w,所以此處參數名也為 w ;取出第一欄所有行的資料;預設值只是為了下游節點提前預覽設定的,實際運作時不會用到這個預設值,直接從右側的「參數預覽」中複製即可。
如下圖所示:
拖入「Python腳本」節點,設定要執行的 Python 腳本檔案,新增 4.3 節設定的腳本參數。如下圖所示:
各設定項說明如下表所示:
填寫 SSH 目標端要執行的 Python 腳本完整路徑:
後綴名為.py的腳本檔案
支援引用參數
腳本路徑需要防止 Shell 注入
1)指定傳遞給腳本的參數:
僅支援選擇已有參數(不支援同名參數選擇)
腳本參數需要防止 Shell 注入
不允許出現未配置的腳本參數項
腳本參數傳入腳本的順序為自上而下
2)4.1.0 及之後版本,參數下拉框中顯示已配置參數,分為任務內參數、全局參數:
所有同名參數都顯示,若同名參數會根據參數優先(「參數指派」設定的參數>呼叫任務中父任務參數>「自訂參數」>「全局參數」>「內建參數」),顯示生效的參數
不可用的參數灰化
腳本開始執行到完全執行完畢的逾時時間,預設選擇無限制
執行X秒後逾時中斷,X值的範圍:0~1000000
指定匯出字元編碼,預設為UTF-8
下拉框內容:
UTF-8
GBK
BIG5
ISO-8859-1
1)點選「儲存並運作」按鈕,任務執行成功後,如下圖所示:
2)可看到 Python 腳本所在的路徑下自動生成了 test.txt 檔案,檔案內容如下圖所示:
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙