2009-07-29 15 views
6

मुझे कुछ कोड पोर्ट करने की आवश्यकता है जो एक सीपीथन अनुप्रयोग से एलसीएमएल पर भारी मात्रा में आयरनपीथन तक निर्भर करता है।आयरनपीथन के तहत काम कर रहे एलएक्सएमएल कैसे प्राप्त करें?

एलएक्सएमएल बहुत पायथनिक है और मैं इसे आयरनपीथन के तहत उपयोग करना चाहता हूं, लेकिन यह libxslt और libxml2 पर निर्भर करता है, जो सी एक्सटेंशन हैं।

क्या किसी को आयरनपीथन या एलएक्सएमएल के संस्करण के तहत एलएक्सएमएल को अनुमति देने के लिए कामकाज के बारे में पता है, जिसमें सी-एक्सटेंशन निर्भरता नहीं है?

उत्तर

1

कुछ जो आप पहले से ही माना जाता है हो सकता है:

एक वैकल्पिक अपने कोड (कोड आकार के आधार पर) IPY से lxml पुस्तकालय और उसके बाद पहला पड़ाव है। आपको सी एक्सटेंशन में देशी सी कॉल के लिए कुछ सी # रैपर लिखना पड़ सकता है - मुझे यकीन नहीं है कि आईपी के संबंध में इसमें क्या समस्याएं हैं, यदि कोई हैं, तो इसमें शामिल हैं।

या यदि आप जो कोड पोर्टिंग कर रहे हैं वह छोटा है, lxml की तुलना में, तो हो सकता है कि आप केवल lxml निर्भरता को हटा दें और .NET XML लाइब्रेरी का उपयोग कर सकें।

+1

उस जानकारी के लिए धन्यवाद, अभी हम गंभीर रूप से डंपिंग एलएक्सएमएल पर विचार कर रहे हैं और नेट एक्सएमएल के लिए जा रहे हैं क्योंकि हम केवल सी-एक्सटेंशन का उपयोग नहीं कर सकते हैं। –

2

आप IronClad देख सकते हैं, जो एक ओपन सोर्स प्रोजेक्ट है जिसका उद्देश्य आयरनपीथन में पाइथन के लिए सी एक्सटेंशन बनाना है।

+0

आपके उत्तर और आपके समय के लिए धन्यवाद, काश मैं आयरनक्लाड का उपयोग कर सकता हूं और शायद यह ज्यादातर मामलों में काम करेगा। दुर्भाग्य से मेरा कोड एक एएसपीनेट सर्वर के अंदर एम्बेडेड आयरनपीथन स्क्रिप्ट के रूप में चलाया जाएगा और मैं किसी भी मूल एक्सटेंशन का उपयोग नहीं कर सकता, भले ही मैं उन्हें एक्सेस कर सकूं। –

+0

मैं अनुभवी आयरनपीथन या पायथन डेवलपर नहीं हूं; मैं एक नेट डेवलपर हूं जो आयरनपीथन में शौक है। मुझे अज्ञानता माफ कर दो। ऐसा लगता है कि एलएक्सएमएल एक समृद्ध एपीआई है, इसलिए इसे दोहराना मुश्किल होगा। मेरे पास एक विचार था जो आप वर्तमान में उपयोग कर रहे एलएक्सएमएल एपीआई के उन हिस्सों को दोहराने का प्रयास करना चाहते थे। आप एक प्रारंभिक बिंदु के लिए http://devhawk.net/2008/05/06/Stream+Processing+XML+In+IronPython.aspx जैसे प्रोजेक्ट को देख सकते हैं। –

संबंधित मुद्दे