[英]SSIS Execute Process Task Python script
我正在嘗試從SSIS執行進程任務執行python腳本。 我按照所有教程如何執行此操作仍然是腳本從一開始就失敗了。 當我從SSIS執行python腳本時,它運行得很好。
這是我的Python腳本:
import sys
import gender_guesser.detector as gender
import xml.etree.cElementTree as ET
from xml.etree.ElementTree import ParseError
try:
input("Press Enter to continue...")
except SyntaxError:
pass
tree = ET.parse('user.xml')
root = tree.getroot()
for child_of_root in root:
for attr in child_of_root:
if attr.tag == 'first_name':
upperName = "%s%s" % (attr.text[0].upper(), attr.text[1:])
print attr.tag,upperName
d = gender.Detector()
gen = d.get_gender(upperName)
print gen
attr.text= gen
tree = ET.ElementTree(root)
tree.write("user1.xml")
這是SSIS執行流程任務的圖像:
錯誤信息:
[Execute Process Task] Error:
In Executing "C:\Python27\python.exe" "C:\Users\bla\blalba\bla\gender-guesser-0.4.0\test\genderTest.py " at "", The process exit code was "1" while the expected was "0".
你的python腳本的文件路徑中是否有空格? 嘗試在Execute Script Process中傳遞帶空格的路徑作為我的參數時,我遇到了同樣的錯誤。 決議是用引號輸入參數。
當從SSIS包的“ Execute Process Task
步驟啟動Execute Process Task
,它不會從與可執行文件( .bat
, .py
, .exe
等)相同的文件夾運行。 與直接文件執行有什么不同。 當您的可執行文件與同一文件夾中的某些其他文件一起使用時,它可能特別重要。
因此,還需要另外指定SSIS包的Execute Process Task
步驟的工作文件夾屬性。
在屏幕截圖上, 工作目錄屬性值為空。 放在C:\\Users\\bla\\blalba\\bla\\gender-guesser-0.4.0\\test\\
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.