2009-07-29 3 views
6

CPython 응용 프로그램에서 IronPython으로의 lxml에 많이 의존하는 코드를 포팅해야합니다.IronPython에서 lxml을 사용하는 방법은 무엇입니까?

lxml은 매우 Python이며 IronPython에서 계속 사용하고 싶지만 C 확장 인 libxslt 및 libxml2에 따라 달라집니다.

IronPython에서 lxml을 허용하는 해결 방법이나 그 C- 확장 종속성이없는 lxml 버전을 아는 사람이 있습니까? 당신이 이미 고려 수도

답변

1

뭔가 :

대안은 첫 번째 포트에 LXML의 IPY에 라이브러리 다음 (코드 크기에 따라) 코드입니다. C 확장에 대한 네이티브 C 호출에 대해 C# 래퍼를 작성해야 할 수도 있습니다. IPy와 관련하여 어떤 문제가 있는지는 잘 모르겠습니다.

또는 lxml과 비교하여 포팅 할 코드가 작 으면 lxml 종속성을 제거하고 .NET XML 라이브러리를 사용할 수 있습니다.

+1

정보를 주셔서 감사합니다. 지금 우리는 Cx 확장을 전혀 사용할 수 없기 때문에 lxml을 버리고 닷넷 XML을 사용하려고합니다. –

2

IronPython에서 Python 용 C Extensions를 사용할 수 있도록하는 오픈 소스 프로젝트 인 IronClad을 확인해보십시오.

+0

답장을 보내 주시고 시간을내어 주셔서 감사합니다. IronClad를 사용하면 대부분의 경우 작동 할 것입니다. 불행히도 내 코드는 ASP.net 서버 내부에 포함 된 IronPython 스크립트로 실행되며 액세스 할 수는 있어도 기본 확장을 전혀 사용할 수 없습니다. –

+0

저는 IronPython 또는 Python 개발자가 아닙니다. IronPython에서 취미가되는 .Net 개발자입니다. 여기에 내게 무지를 용서해주십시오. lxml은 매우 풍부한 API이므로 복제가 어렵습니다. 내가 사용했던 아이디어는 현재 사용중인 lxml API의 부분을 복제하려고 시도한 것입니다. 출발점은 http://devhawk.net/2008/05/06/Stream+Processing+XML+In+IronPython.aspx와 같은 프로젝트를 볼 수 있습니다. –

관련 문제