【问题标题】:How do you turn a Flask app into a Perl plugin?如何将 Flask 应用程序变成 Perl 插件?
【发布时间】:2021-07-18 03:01:35
【问题描述】:

我有一个 Flask 应用程序,它使用一些 Python 库进行 NLP 和音频处理,我想将其变成 Audacity 的插件。 Audacity 接受 Nyquist、Perl 和 C/C++ 中的插件。我猜,由于 Perl 和 Python 之间的相似性,我应该走那条路。 Audacity's docs 比较稀少,也没找到什么很有用的教程,所以有很多疑问。如果他们是愚蠢的问题,请原谅我——这对我来说真的是一个新领域。欢迎任何和所有建议。

  1. 将该网络应用程序转变为插件所需的步骤是什么?

  2. 创建 Perl 插件是指将所有 Python 代码翻译成 Perl,还是只是创建一个调用 Python 代码的 Perl 脚本?

  3. “脚本不适合在 Web 服务器上提供服务”是什么意思?

  4. 我们的 Flask 应用依赖于 Mozilla 的 DeepSpeech 的大型自定义训练模型文件 - 是否可以在插件中处理非常大的文件?

  5. 您如何测试桌面应用程序的插件?您在哪里看到错误日志?

再一次,对我温柔一点!我知道这些可能是愚蠢的问题,但我觉得我的 PM 只是把我丢到了一个没有地图的外国!

【问题讨论】:

    标签: python perl flask plugins audacity


    【解决方案1】:

    数字 1:对于 perl,您需要构建一个 Makefile.PL 或使用另一个模块打包器

    第 2 点:是的,您必须将代码重写为 perl。你可能可以打包它,但你必须假设安装你的包的人已经安装了 Python

    第 3 点:很难说,也许他们担心注入代码或长时间运行的脚本可能导致内存管理不佳

    第 4 点:您可以发送大文件,如果您要复制和发布其他人的代码,最好使用他们的安装程序并将您的代码与它解耦

    第 5 点:有很多方法可以测试它。您可以(并且应该)将 UI 与业务逻辑分离。业务逻辑可以使用标准单元测试进行测试。类似Selenium 的用户界面。您可能还需要集成测试来测试端到端

    【讨论】:

    • 太棒了,非常感谢!澄清一下,当您说“复制和发布其他人的代码”时,我可能并不完全清楚您的意思。 Python 应用程序总是如此依赖迷宫——要求人们自己安装所有这些似乎是一场噩梦。
    • 是的,但您只安装代码并定义依赖项,因此(通常)pip 将使用依赖包提供的打包安装依赖项
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-23
    • 1970-01-01
    • 1970-01-01
    • 2020-06-16
    • 1970-01-01
    • 2013-09-06
    • 2011-09-14
    相关资源
    最近更新 更多