我想从Python中访问一个Perl库。
我怎样才能使用它?

仅供引用,该软件是 NCleaner 。我想在 Python 中使用它来将 HTML 字符串转换为文本。 (是的,我知道 aaronsw 的 Python html2text。NCleaner 更好,因为它删除了样板。)

我不想将 Perl 程序作为脚本运行并重复调用它,因为它的初始加载时间很长,而且我多次调用它。

最佳答案

pyperl 为 python 提供 perl 嵌入,但老实说这不是我要走的方式。我支持 Roboto 的建议——编写一个运行 NCleaner 的脚本(从标准输入处理到标准输出,或者处理临时文件,以更合适的方式运行),并将其作为子进程运行。

或者,因为我从 NCleaner 页面看到它有一个 C 实现,所以使用 Python 具有的任何工具来绑定(bind)到 C 代码并编写一个包装 NCleaner C 实现的 Python 模块。那么将来从 Python 调用 NCleaner 的答案将只是“在这里,使用这个模块”。

脚注:Inline::Python 是比 pyperl 更好的代码,我建议改用它,但它只支持在首先从 Perl 调用 Python 时让 Python 回调到 Perl——将 Perl 嵌入 Python 的能力被列为可能的 future 功能,但自 2001 年以来一直如此,所以不要屏住呼吸。

关于python - Python 中的 Perl?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1917656/

10-11 16:00
查看更多