2012-12-17 16 views
5

मैं NLTK सीखने की कोशिश कर रहा हूं - पाइथन में लिखी गई प्राकृतिक भाषा टूलकिट और मैं कुछ उदाहरण चलाने के लिए नमूना डेटा सेट इंस्टॉल करना चाहता हूं।एनएलटीके: सेट प्रॉक्सी सर्वर

मेरे वेब कनेक्शन एक प्रॉक्सी सर्वर का उपयोग करता है, और मैं इस प्रकार प्रॉक्सी पता निर्दिष्ट करने के लिए कोशिश कर रहा हूँ:

>>> nltk.set_proxy('http://proxy.example.com:3128' ('USERNAME', 'PASSWORD')) 
>>> nltk.download() 

लेकिन मैं त्रुटि मिलती है:

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: 'str' object is not callable 

मैं एक ProxyBasicAuthHandler सेट करने का फैसला ऊपर nltk.download() कॉल करने से पहले:

import urllib2 

auth_handler = urllib2.ProxyBasicAuthHandler(urllib2.HTTPPasswordMgrWithDefaultRealm()) 
auth_handler.add_password(realm=None, uri='http://proxy.example.com:3128/', user='USERNAME', passwd='PASSWORD') 
opener = urllib2.build_opener(auth_handler) 
urllib2.install_opener(opener) 

import nltk 
nltk.download() 

लेकिन अब मैंमिल।

प्रलेखन says कि यदि प्रॉक्सी None पर सेट है तो यह फ़ंक्शन सिस्टम प्रॉक्सी का पता लगाने का प्रयास करेगा। लेकिन यह काम नहीं है।

मैं एनएलटीके के लिए नमूना डेटा सेट कैसे स्थापित कर सकता हूं?

+0

रेफरी https://stackoverflow.com/questions/41348621/ssl-error-downloading-nltk-data सेट ssl अगर यह त्रुटि – enjoy

उत्तर

7

वेबसाइट है जहाँ आप अपने पहले ही प्रयास के लिए कोड की उन पंक्तियों मिल गया के साथ कोई त्रुटि है (मैंने देखा है कि एक ही त्रुटि)

त्रुटि में लाइन

nltk.set_proxy('http://proxy.example.com:3128' ('USERNAME', 'PASSWORD')) 
है

तर्कों को अलग करने के लिए आपको अल्पविराम की आवश्यकता है। सही रेखा

nltk.set_proxy('http://proxy.example.com:3128', ('USERNAME', 'PASSWORD')) 

यह ठीक काम करेगा।

+0

बहुत बहुत धन्यवाद! एनएलटीके परियोजना के दस्तावेज़ीकरण में त्रुटियां हैं। – ymn

+0

आप 'nltk.set_proxy ('http://proxy.example.com:3128', 'USERNAME', 'PASSWORD') ' यदि आपके पासवर्ड में विशेष वर्ण हैं तो उन्हें हेक्स मानों में परिवर्तित करना याद रखें। उदाहरण के लिए @ –

0

उचित पर्यावरण चर बदलकर सिस्टम की प्रॉक्सी को भी बैश में सेट करें।

प्रॉक्सी सेटिंग्स जो मैं रखने से कुछ हैं:

http_proxy=http://127.0.0.1:3129/ 
ftp_proxy=http://127.0.0.1:3129/ 
all_proxy=socks://127.0.0.1:3129/ 
https_proxy=http://127.0.0.1:3129/ 

आप अपने ~/.bashrc फ़ाइल का संपादन करके वातावरण चर स्थायी में परिवर्तन कर सकते हैं। नमूना संपादित करें:

export http_proxy=http://127.0.0.1:3129/ 
+0

मैं पहले से ही उपयोग कर रहा हूँ 'http_proxy दे: मैं इस स्क्रिप्ट का उपयोग 'पर्यावरण परिवर्तनीय और कई कार्यक्रम (जैसे ग्रहण, गिट, wget, आदि) इसका उपयोग करें। लेकिन मुझे ऐसा लगता है कि एनएलटीके डाउनलोडर पर्यावरण चर का उपयोग नहीं करता है। – ymn

+0

मेरे सिस्टम में, यह पूरी तरह से काम करता है। मैं प्रॉक्सी का भी उपयोग करता हूं। '>>> आयात nltk >>> nltk.download() एनएलटीके डाउनलोडर ------------------------------- -------------------------------------------- डी) डाउनलोड एल) सूची सी) कॉन्फ़िगर एच) सहायता क्यू) --------------------------------------- ------------------------------------ डाउनलोडर> ' – Sibi

3

ऊपर सुझाए गए विकल्प मेरे लिए काम नहीं करते थे। यहां मेरे विंडोज वातावरण में मेरे लिए क्या काम किया है। गोल ब्रेसिज़ को हटाने का प्रयास करें। यह अब काम करता है !

nltk.set_proxy('http://proxy.example.com:3128', 'USERNAME', 'PASSWORD') 
1

मैं अच्छी तरह से NLTK 3.0 और खिड़कियों environment..and प्रॉक्सी प्रमाणीकरण में अजगर 3.4 चलाने रन अगर मैं शाखा को दूर .. तो इस स्क्रिप्ट

nltk.set_proxy('http://proxy.example.com:3128', 'username', 'password') 
7

मैं भी वही त्रुटि हो रही थी का उपयोग लेकिन मुझे एक पूरी तरह से काम करने का समाधान मिला। आपको nltk_data मैन्युअल रूप से डाउनलोड करने की आवश्यकता है और इसे linux और c: \ nltk_data में usr/lib/nltk_data निर्देशिका में डालें, यदि आप विंडोज का उपयोग करते हैं।
यहां दिए गए चरणों का पालन करने के लिए यहां दिए गए हैं:
1. इस गीथब लिंक
https://github.com/nltk/nltk_data/tree/gh-pages से nltk_data ज़िप फ़ाइल डाउनलोड करें।
2. चूंकि डेटा ज़िप रूप में है, आपको इसे निकालने की आवश्यकता है।
3।विशेष रूप से उबंटू उपयोगकर्ताओं के लिए, एक आसान तरीके से फाइल सिस्टम को नेविगेट करने के लिए निम्न आदेश।
सूडो नॉटिलस यह कॉपी/पेस्ट प्रक्रिया को आसान बनाता है। अब आप आसानी से usr/साझा कर सकते हैं या आसानी से फ़ोल्डर बना सकते हैं।
4. अब यदि आप usr/share में nltk_data नामक फ़ोल्डर बनाने के बजाय लिनक्स उपयोगकर्ता हैं और यदि आप c:/में इसे बनाने के बजाय विंडोज का उपयोग करते हैं।
5. अब आपने अभी बनाई गई nltk_data फ़ोल्डर में nltk_data-gh-pages (जिसे आपने अभी निकाला है) की सभी सामग्री पेस्ट करें।
6. अब nltk_data/packages फ़ोल्डर को सभी फ़ोल्डर कॉपी करें और इसे nltk_data फ़ोल्डर में पेस्ट करें। अब आप कर चुके हैं।

चूंकि यह मेरा पहला जवाब है, इसलिए मैं प्रक्रिया को सही ढंग से समझा नहीं सकता। इसलिए यदि आपको इन चरणों के माध्यम से जाने में परेशानी है, तो कृपया पर टिप्पणी करें।

+0

के लिए% 40 मैं https://stackoverflow.com/q/48060011/1352127 पर त्रुटि प्राप्त कर रहा हूं। कृपया सहायता कीजिए – Shinchan

0

यदि आप मैन्युअल रूप से एनएलटीके कॉर्पस स्थापित करना चाहते हैं।

1) http://www.nltk.org/nltk_data/ पर जाएं और अपनी वांछित एनएलटीके कॉर्पस फ़ाइल डाउनलोड करें।

2) अब एक अजगर खोल में nltk.data.path

3) के मान की जाँच रास्ता है कि आपकी मशीन पर मौजूद किसी एक को चुनें, और अंदर corpora उप निर्देशिका में डेटा फ़ाइलों को अनज़िप।

4) अब आप डेटा from nltk.corpos import stopwords आयात कर सकते हैं

संदर्भ: https://medium.com/@satorulogic/how-to-manually-download-a-nltk-corpus-f01569861da9

0

मैं चलाने NLTK 3.2.5 और Windows 10 वातावरण के अंतर्गत अजगर 3.6। गलत पर

nltk.set_proxy('http://user:[email protected]:3128') 
nltk.download() 
संबंधित मुद्दे