建立用户可以组合以创建工作流的操作库(使用Python)

时间:2019-05-13 13:18:50

标签: python automation workflow

我正在努力地在网络上找到很多东西,以指导如何为我要实现的解决方案编写解决方案的最佳实践。

与我们要实现的功能类似的是Automator工具,它是OS X的一部分:

https://support.apple.com/en-gb/guide/automator/welcome/mac

基本上会有一个动作库,这些动作都在系统中维护。这些动作将具有不同的参数,具体取决于动作。

用户可以使用一系列操作来构建自定义工作流程,并分配将用于代替参数的具体数据。然后,他们可以多次运行工作流程。

我一直在考虑的方法:

在数据库中具有一个动作表。动作具有名称和代码(存储在数据库中的python脚本)。

Actions
Name (string): Go To webpage
Code (string): python code to go to page <url>

用户创建工作流程时,会从这些可用操作中进行选择以进行构建。然后将它们存储起来,以便可以使用所需的参数再次运行它们。

Workflow
ExecutionOrder (int): 1 
Name (string): Go To Webpage
Data (json): { url: "www.blah.com", }

运行工作流程时,将使用Python中的Exec函数动态调用代码。在运行之前使用已定义的数据(在此示例中为URL)更新的代码。

另一个选择是将代码移入功能(在DB外部)。使用动作名称和JSON数据来确定要调用的函数,以及将哪些数据传递到参数列表中。

虽然我不相信这是最好的方法,但是对于替代方法还是有些困惑。关于支持的技术或方法有什么建议吗?

0 个答案:

没有答案