首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >输入数据行作为python中的参数

问输入数据行作为python中的参数
EN

Stack Overflow用户
提问于 2019-05-07 17:33:34
回答 1查看 180关注 0票数 1

我想使用NI-FI.In NI-FI将数据从源传输到目标,我还想使用python脚本来屏蔽我的Data.so。有人建议我将输入的数据行作为参数传递到python中。

所以我想知道我需要在我的python脚本中手动传递文件或每一行和每一列以进行屏蔽。最好的方法是什么,我如何才能获得它。

在NI-FI中,我也想使用python脚本来屏蔽我的数据,但是Getfile处理器和python脚本指出了位于NI-FI的输入文件夹中的相同文件,因此可能是由于这个原因,我在执行流命令时遇到错误。

以下脚本由user @GMc请求:-

代码语言:javascript
复制
   class ModJSON(StreamCallback):
    def __init__(self):
        pass

    def process(self, inputStream, outputStream):
        flowFile = session.get()
        obj = {
            "Source": "NiFi",
            "IP": obj['IP'].replace(regex='((?<=[0-9])[0-9]|(?<=\.)[0-9])', value='X'),
            "Name": obj['user']['screen_name']
        }

在此脚本中,我希望屏蔽来自GetFile处理器但文件在队列中的数据。

我想从源中获取数据并转换它。

EN

回答 1

Stack Overflow用户

发布于 2019-05-07 18:09:44

这已经有一段时间了,但是如果我没记错的话,NiFi到python的接口为您提供了一个名为session的全局变量。

您可以使用session对象来获取流文件,并将输出传输到正确的下游路径(例如成功)。

也许本教程将帮助您使用https://community.hortonworks.com/articles/35568/python-script-in-nifi.html

我对您提到的GetInputFile (是指GetFile processor)有点困惑吗?和python脚本。通常,GetFile从文件系统获取文件。然后将其转换为NiFi中称为FlowFile的内部机制。下游处理器(例如python脚本)从会话对象获取流文件,对其执行一些操作,并可选地通过session.transfer方法传输修改后的版本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56019630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档