Perl в рамках Python?

Существует библиотека Perl, к которой я хотел бы получить доступ из Python. Как я могу использовать его?

К вашему сведению программное обеспечение является NCleaner. Я хотел бы использовать его из Python для преобразования строки HTML в текст. (Да, я знаю о Python html2text aaronsw. NCleaner лучше, потому что он удаляет шаблон.)

Я не хочу запускать программу Perl как сценарий и называть ее неоднократно, потому что она имеет дорогое начальное время загрузки, и я называю ее много раз.

7
задан Joseph Turian 16 December 2009 в 21:12
поделиться

1 ответ

pyperl обеспечивает встраивание perl для python, но, честно говоря, я бы пошел не так. Второе предложение Робото - напишите сценарий, который запускает NCleaner (либо обработка от stdin до stdout, либо работа с временными файлами, в зависимости от того, какой из них более уместен), и запускайте его как подпроцесс.

Или, поскольку я вижу из На странице NCleaner, которая имеет реализацию C, используйте все возможности Python для привязки к коду C и напишите модуль Python, который обертывает реализацию NCleaner C. Тогда в будущем ответ на вызов NCleaner из Python будет просто «здесь, используйте этот модуль».

Сноска: Inline :: Python - лучший код, чем pyperl, и я бы предложил использовать его вместо , но он поддерживает только обратный вызов Python в Perl, когда Python вызывается из Perl в первую очередь - возможность встраивать Perl в Python указана как возможная будущая функция, но это так с 2001 года, поэтому не держите дыхание.

13
ответ дан 6 December 2019 в 19:37
поделиться