2009-12-16 4 views
6

Python에서 액세스하고 싶은 Perl 라이브러리가 있습니다. 어떻게 사용할 수 있습니까?Python 내 Perl?

참고로 소프트웨어는 NCleaner입니다. 나는 HTML 문자열을 텍스트로 변환하기 위해 파이썬에서 사용하고 싶습니다. (예, 아론 스 파이톤 html2text에 대해 알고 있습니다. 보일러 플레이트를 제거하기 때문에 NCleaner가 더 좋습니다.)

Perl 프로그램을 스크립트로 실행하고 값 비싼 초기 값을 가지고 있기 때문에 반복적으로 호출하고 싶지 않습니다. 로드 시간과 나는 그것을 여러 번 부르고있다.

+0

Perl 프로그램을 작성하고 Python을 통해 명령 행을 통해 호출하는 것에 대해 생각해 보셨습니까? –

+2

Perl 프로그램을 스크립트로 실행하고 값 비싼 초기로드 시간을 갖고 여러 번 호출하기 때문에 반복적으로 호출하고 싶지 않습니다. –

+1

지속적인 프로세스로 실행하면 전혀 무리가있는 것은 아닙니다 ... – hobbs

답변

12

pyperl은 파이썬에 대한 perl 임베딩을 제공하지만 솔직히 내가가는 방법이 아닙니다. 두 번째 Roboto의 제안 - NCleaner (stdin에서 stdout으로 처리하거나 임시 파일에서 작업하는 것 중 더 적합한 것)를 실행하는 스크립트를 작성하고이를 하위 프로세스로 실행하십시오.

또는 NCleaner 페이지에서 C 구현을 가지고 있으므로 Python이 C 코드에 바인딩하는 데 필요한 모든 기능을 사용하고 NCleaner C 구현을 래핑하는 Python 모듈을 작성하십시오. 그렇다면 미래에 Python에서 NCleaner를 호출하는 대답은 "여기,이 모듈을 사용하십시오."일 것입니다.

은 각주 : Inline::Python는 pyperl보다 더 나은 코드, 그리고 그 대신에 사용하는 것이 좋습니다,하지만 파이썬은 처음에 펄에서 호출 될 때 그것은 단지 펄로 돌아 가진 파이썬 호출을 지원합니다 -에 펄을 포함 할 수있는 능력 파이썬은 가능한 미래의 기능으로 나열되어 있지만, 2001 년 이래로 그렇게되었습니다. 숨을 멈추지 마십시오.

관련 문제