वर्चुअल वातावरण में स्पाइडर कैसे चलाएं?


98

मैं एनाकोंडा वितरण के साथ स्थापित स्पाइडर का उपयोग कर रहा हूं जो कि पायथन 2.7 को डिफ़ॉल्ट रूप से उपयोग करता है। वर्तमान में मुझे पायथन 3.4 के साथ एक विकास आभासी वातावरण स्थापित करने की आवश्यकता है।

ऑनलाइन शोध के बाद शीर्ष दो सुझाव हैं:

  1. पहले आभासी वातावरण स्थापित करना और स्पाईडर की प्राथमिकताओं को बदलना, जैसे यहाँ ;
  2. आभासी वातावरण में ही PyQt4 की तरह सभी स्पाइडर निर्भरताएं स्थापित करने के लिए, यहाँ ;

दोनों सिफारिशें बोझिल हैं और विकास के लिए स्मार्ट विकल्प की तरह नहीं दिखती हैं।

क्या कोई समाधान है जो आवश्यक आभासी वातावरण को सक्रिय करने के बाद आवश्यक पायथन संस्करण के साथ स्पाइडर चलाने की अनुमति देगा?

जवाबों:


114

यह 2020 में करने के लिए एक त्वरित तरीका है। एनाकोंडा नेविगेटर का उपयोग करना:

  1. एनाकोंडा नेविगेटर खोलें
  2. अपनी इच्छानुसार अपना नया वातावरण बनाएं। मैंने इस वातावरण को "परीक्षण" नाम दिया। इसे सक्रिय करने के लिए उस पर क्लिक करें।

यहां छवि विवरण दर्ज करें

  1. "होम" पर जाएं और स्पाइडर बॉक्स के नीचे "इंस्टॉल करें" पर क्लिक करें।

यहां छवि विवरण दर्ज करें

  1. "लॉन्च / रन" पर क्लिक करें

अपने वातावरण को सेट करते समय अभी भी कुछ छोटे कीड़े हैं (जिनमें से अधिकांश नेविगेटर को पुनरारंभ करके हल किए जाते हैं), यदि आपको एक बग मिलता है, तो कृपया इसे एनाकोंडा मुद्दों बग-ट्रैकर में पोस्ट करें । धन्यवाद।


अगर फिर भी यह काम नहीं करता है, तो नेविगेटर अभी भी उपयोगी हो सकता है, पर क्लिक करने पर> एनवायरमेंट आपको ऐसे एनवायरमेंट पर स्थापित मॉड्यूल के लिए एक प्रबंधन विंडो पर ले जाता है, जो स्पाइडर से संबंधित खोज और चयन कर रहा है, और फिर उस पर क्लिक करके उन्हें इंस्टॉल करेगा। उनकी निर्भरता।

यहां छवि विवरण दर्ज करें


11
यदि संभव हो तो इसे शीर्ष समाधान में जोड़ा जाना चाहिए
dward4

2
रास्ता, रास्ता बेहतर।
एरिक औल्ड

2
हाँ। ऐसा लगता है कि प्रत्येक वीई के लिए एक अलग स्पाईडर स्थापित करना होगा।
मिखाइल जेनकिन

3
क्या मैं कमांड लाइन से ऐसा कर सकता हूं? हर बार नाविक को दौड़ना एक ड्रैग की तरह लगता है ...
nocibambi

1
@nocibambi हां, अगर आपका मतलब सिर्फ cmd से env में स्पाइडर चलाने का है, तो टॉमस्कैजेमेकास के जवाब के नीचे देखें।
लॉरेंज

104

आवश्यक पायथन संस्करण के साथ एनाकोंडा में आभासी वातावरण बनाने का एक विकल्प है ।

conda create -n myenv python=3.4

इसे सक्रिय करने के लिए:

source activate myenv   # (in linux, you can use . as a shortcut for "source")
activate myenv          # (in windows - note that you should be in your c:\anaconda2 directory)

अद्यतन । मैंने इसे उबंटू 18.04 के साथ परीक्षण किया है। अब आपको इस कमांड के साथ नए वातावरण के लिए स्पाइडर स्थापित करना होगा (ऊपर दिए गए कमांड के साथ पर्यावरण की सक्रियता के बाद):

conda install spyder

(मैंने पाइप के साथ इंस्टॉलेशन का भी परीक्षण किया है, लेकिन पायथन 3.4 या पुराने संस्करणों के लिए, यह लाइब्रेरी निर्भरता के साथ टूट जाता है। त्रुटि के लिए इंस्टालेशन की आवश्यकता होती है।)

और अब पायथन 3.4 के साथ स्पाइडर चलाने के लिए बस टाइप करें:

spyder

पायथन 3.4 के साथ स्पाइडर

एक पाठक से संपादित करें:

एक सामान्य खोलने, उपयोग "एनाकोंडा शीघ्र"> के लिए activate myenv> spyder(फिर "एनाकोंडा शीघ्र" खुला रहना चाहिए, आप अन्य आदेश के लिए उपयोग कर सकते हैं नहीं है, और एक शक्ति-पास स्पाइडर बंद हो जाएगा)। यह निश्चित रूप से "एनाकोंडा नेविगेटर"> स्विच पर्यावरण> लॉन्च स्पाइडर (@ adelriosantiago के जवाब) के लंबे लोड से तेज है।


7
मैंने विंडोज 7 पर इसका परीक्षण किया है और इसने काम किया है। पर्यावरण को सक्रिय करने के लिए आपको शुरुआत में "स्रोत" शब्द जोड़ने की आवश्यकता नहीं है। पायथन 2,7 होने के लिए, सेटिंग को अजगर = 2.7 में बदलें।
टोमस्कैजेमेकास

4
ओह, शायद आपको पहले उस वातावरण में स्पाइडर स्थापित करना होगा? मैंने पर्यावरण को एनाकोंडा के बजाय सुन्न के साथ बनाया है, इसलिए शायद यह मुख्य वातावरण से स्पाइडर चला रहा है?
3

4
यह मुद्दा लगता है। ipython के साथ भी यही बात है लेकिन इसे पर्यावरण के भीतर स्थापित करने के बाद तय किया गया
Endolith

9
मैंने यह भी पाया कि विंडोज़ (10) पर, एनाकोंडा वातावरण से अभी भी स्पाइडर लॉन्च करना, अभी भी मेरे डिफ़ॉल्ट अजगर के साथ स्पाइडर लॉन्च किया है, और मुझे एनाकोंडा वातावरण में स्पाइडर को स्थापित करना पड़ा, पहले उस वातावरण के अजगर के साथ स्पाइडर खोलने के लिए।
मैक्स पावर

9
यह भी सुनिश्चित करें कि आपके पास उस वातावरण में स्पाइडर हैconda install -n myenv spyder
shahar_m

57

Tomaskazemekas के उत्तर के लिए अतिरिक्त: आपको उस आभासी वातावरण में स्पाइडर स्थापित करना चाहिए:

conda install -n myenv spyder

(विंडोज पर, लिनक्स या मैकओएस के लिए, आप समान कमांड के लिए खोज कर सकते हैं)


2
स्पाइडर आमतौर पर एंकॉन्डा पायथन पैकेज सूची के भाग के रूप में स्थापित किया जाता है । अतिरिक्त स्थापना की आवश्यकता केवल मिनिकोंडा के मामले में हो सकती है।
टॉमस्कैजेकमास

1
हाँ य़ह सही हैं। मेरे मामले में, मेरे पास अपना आभासी वातावरण पहले स्थापित था, और यह एक हल्का संस्करण है, मैं केवल बहुत आवश्यक पैकेज स्थापित करता हूं। मुझे लगता है कि मेरी स्थिति में कोई है।
तिन लुओ

@tomaskazemekas सर मैंने miniconda3 स्थापित किया है :) मैं स्पाइडर में अपना पायथन कोड कैसे चला सकता हूं क्योंकि मुझे नहीं पता कि कैसे स्पाइडर चलाना है? जब मैं "स्पाइडर" को मिनीकोन्डा प्रॉम्प्ट में टाइप करता हूं, तो इस कमांड को नहीं पहचाना जा सकता "त्रुटि उत्पन्न होती है।
नोमान ने

@ नोमान मारवाट चूंकि स्पाइडर मिनिकोंडा का हिस्सा नहीं है, इसलिए आपको इसे कमांड से चलाने से पहले इंस्टॉल करना होगा conda install spyder
टॉमस्कैजेकमास

उसके बाद, myenv/binडायरेक्टरी के अंदर सिमलिंक देखें और इसे Applicationsफ़ोल्डर में कॉपी करें ताकि आप आसानी से इसे पा सकें और एक छोटी, काली खिड़की में टाइप किए बिना इसके वातावरण के अंदर स्पाइडर लॉन्च कर सकें! (आप आसानी से इसमें एक आइकन जोड़ सकते हैं, अगर आप आइकन में हैं)
पैट्रिकटी

49

मेरे लिए क्या काम किया:

  1. पर्यावरण से स्पाइडर चलाएं (स्रोत सक्रिय होने के बाद)
  2. टूल्स पर जाएं -> प्राथमिकताएं -> अजगर इंटरप्रेटर और उस spyder ईव से अजगर फाइल को चुनें जिसे आप ex से लिंक करना चाहते हैं : / home / you / anaconda3 / envs / your_env / bin / pththon

Ubuntu 16, spyder3, python3.6 पर काम किया।


इस और बाकी सभी पदों (दो दिनों की कोशिश!) की कोशिश करने के बाद, स्पाइडर के अंदर उचित वातावरण को स्थापित करने के लिए यह एकमात्र काम करने वाला समाधान था ..
एंटोनियो

चरण (1) की आवश्यकता नहीं है, क्योंकि चरण (2) पहले से ही व्याख्याकार को पर्यावरण में भेज दिया है।
फरेस

2
@ भविष्य के पाठकों के लिए: मैंने भी सोचा था कि चरण 1 निरर्थक था। लेकिन इसे छोड़ने से सभी प्रकार की पागल त्रुटियाँ हो जाती हैं (और यहां तक ​​कि यूआई बग को खराब कर देता है और स्पाइडर अनुत्तरदायी हो जाता है)।
चीकायबानाना

18

सभी वातावरण में स्पाइडर को पुन: स्थापित किए बिना करने के लिए यहां आधिकारिक संदर्भ का पालन करें

संक्षेप में (कोंडा के साथ परीक्षण):

  • बेस वातावरण में स्पाइडर स्थापित किया जाना चाहिए

सिस्टम प्रॉम्प्ट से:

  • एक नया वातावरण बनाएँ। ध्यान दें कि आप इसे कैसे बनाते हैं (conda, virtualenv) के आधार पर पर्यावरण फ़ोल्डर आपके सिस्टम पर अलग-अलग जगह पर स्थित होगा)

  • पर्यावरण को सक्रिय करें (जैसे, conda activate [yourEnvName])

  • वातावरण के अंदर स्पाइडर-कर्नेल स्थापित करें (जैसे, conda install spyder-kernels)

  • पर्यावरण के अंदर निष्पादन योग्य अजगर के लिए पथ खोजें और कॉपी करें। इस कमांड को प्रॉम्प्ट से इस्तेमाल करके इस रास्ते को खोजा जा सकता हैpython -c "import sys; print(sys.executable)"

  • पर्यावरण को निष्क्रिय करें (यानी, आधार पर वापसी conda deactivate)

  • स्पाइडर चलाएं ( spyder3)

  • अंत में स्पाइडर टूल मेन्यू में प्राथमिकताएँ> पायथन इंटरप्रेटर> पर जाएँ और निम्न दुभाषिए का उपयोग करें और पर्यावरण अजगर निष्पादन योग्य पथ को चिपकाएँ

  • IPython कंसोल को पुनरारंभ करें

PS: स्पाइडर में आपको नीचे कुछ इस तरह से देखना चाहिएयहां छवि विवरण दर्ज करें

देखा


यह एकमात्र समझदार उत्तर है।
sjsam

ध्यान दें कि जब virtualenv और स्पाइडर 4.1.3 का उपयोग करते हुए नीचे की रेखा पर कुछ भी नहीं दिखाई देता है, इसकी पुष्टि करता है (हालांकि सब कुछ काम किया है)
एलेक्सिस

यह सही जवाब है! इसके अलावा, स्पाइडर इंस्टॉलेशन किसी भी कोंडा वर्चुअल वातावरण में हो सकता है। इसे आधार वातावरण में नहीं होना चाहिए।
संचित

1
आप सही हैं @ सेनचिट आप प्रत्येक एनवॉस्मेंट में स्पाइडर को "पाइप / कोंडा" स्थापित कर सकते हैं फिर इसे वहां से कॉल कर सकते हैं लेकिन जब आप चाहते हैं कि बस एक ही स्थापित हो तो यह समाधान है
एलेक्सिस

10

उपरोक्त उत्तर सही हैं, लेकिन मैं spyderअपने virtualenv के भीतर कॉल कर रहा हूं फिर भी PATHअपने डिफ़ॉल्ट anaconda vv में स्पाइडर के संस्करण को देखने के लिए मेरा उपयोग करूंगा । मुझे यह उत्तर मिला जिसने निम्न हल दिया:

source activate my_env            # activate your target env with spyder installed
conda info -e                     # look up the directory of your conda env
find /path/to/my/env -name spyder # search for the spyder executable in your env
/path/to/my/env/then/to/spyder    # run that executable directly

मैंने इसे PATHउच्च प्राथमिकता पर निष्पादन योग्य में जोड़ने या जोड़ने के लिए चुना PATHक्योंकि मुझे लगा कि इससे अन्य कार्यक्रमों को तोड़ने की संभावना कम है। हालाँकि, मैंने निष्पादन योग्य में एक उपनाम जोड़ा ~/.bash_aliases


8

मुझे सिर्फ एक ही समस्या थी कि स्पाइडर को वर्चुअल एनवायरनमेंट में चलाने की कोशिश की जाए।

समाधान सरल है:

अपने आभासी वातावरण को सक्रिय करें।

फिर अपने वर्चुअल वातावरण में स्पाइडर और उसकी निर्भरता (PyQt5) को स्थापित करें।

फिर अपने आभासी वातावरण सीएलआई से स्पाइडर 3 लॉन्च करें।

यह अब मेरे लिए ठीक काम करता है।


1
यह अब ubuntu 16 के तहत python2 के साथ काम नहीं करता है। चारों ओर एक काम के किसी भी विचार?
18:59

अजगर 2 पदावनत है। यह सलाह दी जाती है कि आप पायथन 3 का उपयोग करके खुद को अपग्रेड करें। 3.
यरूशलेम प्रोग्रामर

4

विंडोज पर:

आप एक शॉर्टकट निष्पादित कर सकते हैं

Anaconda3\pythonw.exe Anaconda3\cwp.py Anaconda3\envs\<your_env> Anaconda3\envs\<your env>\pythonw.exe Anaconda3\envs\<your_env>\Scripts\spyder-script.py

हालाँकि, यदि आपने एनाकोंडा शेल के अंदर अपने वेनव से स्पाइडर शुरू किया है, तो मेरा मानना ​​है कि यह आपके लिए यह शॉर्टकट बनाता है (बस विंडोज पर "स्पाइडर खोजें")।


1

मैं ऊपर दी गई एक सलाह का पालन करता हूं और वास्तव में यह काम करता है। सारांश में, जब आप उबंटू पर एनाकोंडा डाउनलोड करते हैं, तो ऊपर दी गई सलाह का उपयोग करके आप वातावरण बनाने में मदद कर सकते हैं । जब आप मेरे मामले में स्पाइडर डाउनलोड करते हैं तो डिफ़ॉल्ट है: (बेस) स्मिथ @ ubuntu ~ $ । आपके द्वारा वातावरण बनाने के बाद, यानी फ़ेनिक्स और इसे सक्रिय करें $ conda के साथ, फ़ेनिक्स को सक्रिय करें (फेनिक्स) smith @ ubuntu ~ $ में बदल दें । फिर आप इस प्रॉम्प्ट से $ स्पाइडर को स्पाइडर लॉन्च करते हैंऔर आपका सिस्टम स्पाइडर आईडी खोल देता है, और आप इस पर फेनिक्स कोड लिख सकते हैं। याद रखें कि हर बार जब आप टर्मिनल खोलते हैं तो आपका सिस्टम डिफ़ॉल्ट प्रॉम्प्ट को खोलता है। आपको अपने वातावरण को सक्रिय करना होगा जहां आपका पैकेज है और इसके लिए त्वरित परिवर्तन अर्थात (फेनिक्स) है। मुझे उम्मीद है कि इससे सहायता मिलेगी। साथ ही मदद करने वाले सभी लोगों का धन्यवाद। यह समुदाय महान है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.