回答问题

我正在尝试从 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 执行过程任务的图像:

这是 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".

Answers

你的 python 脚本的文件路径中有空格吗?尝试将带有空格的路径作为执行脚本进程中的参数传递时,我遇到了同样的错误。解决方法是用引号输入参数。

Logo

Python社区为您提供最前沿的新闻资讯和知识内容

更多推荐