2011-05-30 2 views
5

के माध्यम से एक पायथन मॉड्यूल को कैसे पहुंचाया जा सकता है मेरी कंपनी किसी प्रकार का वर्जन-कंट्रोल आर्काइवल टूल (माइक्रोसॉफ्ट विंडोज) का उपयोग करती है, और मैं इससे सीधे आयात करना चाहता हूं। लेकिन मुझे ऐसा करने का कोई रास्ता नहीं मिल रहा है।एक यूआरएल

यहाँ मैं क्या करने की कोशिश की है:

>>> import sys 
>>> sys.path.append(r"http://some_path_copied_and_pasted/05.Autres%20Outils/Regen_Engine") 
>>> sys.path 
['C:\\Python26\\Lib\\idlelib', 'C:\\Python26\\python26.zip', 'C:\\Python26\\DLLs', 'C:\\Python26\\lib', 'C:\\Python26\\lib\\plat-win', 'C:\\Python26\\lib\\lib-tk', 'C:\\Python26', 'C:\\Python26\\lib\\site-packages', 'http://some_path_copied_and_pasted/05.Autres%20Outils/Regen_Engine'] 
>>> import regen_engine as r 
Traceback (most recent call last): 
    File "<pyshell#6>", line 1, in <module> 
    import regen_engine as r 
ImportError: No module named regen_engine 

मैं "" (रिक्त स्थान) के साथ यूआरएल के "% 20" की जगह कोशिश की, लेकिन परिणाम एक ही है। मैंने imp मॉड्यूल का उपयोग करके भी कोशिश की, लेकिन कोई बेहतर नहीं।

  1. यह एक URL से एक आयात करना संभव है:

    तो यहाँ मेरी सवाल कर रहे हैं?

  2. यदि हां, तो मैं इसे कैसे कर सकता हूं?

शायद इस फ़ाइल को शेयरपॉइंट के किसी अन्य, छिपे हुए पथ के साथ एक्सेस करने के लिए एक समाधान हो सकता है, इसलिए इसके लिए एक टैग उचित होगा।

+0

कभी यह कोशिश लेकिन xhtmlhook पर एक नज़र डालें: http://www.boddie.org.uk/पायथन/xhtmlhook/ – mouad

+0

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

उत्तर

2
import urllib 
def urlimport(x): 
    exec urllib.urlopen(x) in globals() 

ऐसा करने का यह गलत तरीका है, आपको इसे कभी भी उत्पादन कोड में उपयोग नहीं करना चाहिए, यह केवल अवधारणा का सबूत है।

+0

आपके उदाहरण के बाद, मैंने स्क्रिप्ट को पढ़कर इसका परीक्षण करना शुरू कर दिया। लेकिन अब मेरे पास कुछ संबंध समस्या है: 'URLError: '। तो मुझे लगता है कि मुझे इसे पहले जांचना होगा, और मुझे लगता है कि यह इस बहुत ही अच्छे शेयरपॉइंट पोर्टल से संबंधित है, शायद किसी प्रकार की एक्सेस-राइट पॉलिसी। पहली नज़र में ऐसा लग रहा था इतना आसान नहीं ... –

+0

आपके वेबसर्वर को मेरा कोड नहीं है। –

+0

यह स्पष्ट है, इसलिए मेरी टिप्पणी "मुझे जांच करनी होगी"। आपके पहले उत्तर से, मुझे समझ में आया कि पायथन यूआरएल से आयात कर सकता है (भले ही थोड़ा मुश्किल हो); अब मेरा काम यह समझना होगा कि इस शेयरपॉइंट सर्वर को कैसे संभालना है। तो साक्ष्य के टुकड़े के लिए धन्यवाद। –

1

प्रयास करें:

def dynamic_import_by_uri(file) 
    file = os.path.abspath(file) 
    exec open(file, 'rb') in globals() 

यह काम करता है, लेकिन यह उत्पादन संस्करण के लिए असुरक्षित है ...