2011-10-17 18 views
5

मैं ट्वीपी नामक एक ट्विटर एपीआई का उपयोग कर रहा हूं। यह ठीक काम कर रहा किया गया है, तो मैं सर्वर रिबूट और अब मैं इस हो रही है:पायथन: लुकअप त्रुटि: अज्ञात एन्कोडिंग: हेक्स

>>> import tweepy 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "tweepy/__init__.py", line 17, in <module> 
    from tweepy.streaming import Stream, StreamListener 
    File "tweepy/streaming.py", line 16, in <module> 
    json = import_simplejson() 
    File "tweepy/utils.py", line 83, in import_simplejson 
    import simplejson as json 
    File "build/bdist.linux-i686/egg/simplejson/__init__.py", line 111, in <module> 

    File "build/bdist.linux-i686/egg/simplejson/decoder.py", line 29, in <module> 
    File "build/bdist.linux-i686/egg/simplejson/decoder.py", line 21, in _floatconstants 
LookupError: unknown encoding: hex 

मैं यह भी कोशिश की:

from encodings import hex_codec 

और यह मदद नहीं की।

कोई विचार क्यों?

+0

वहाँ आप रिबूट करने के बाद से खो दिया है पर्यावरण की स्थापना के कुछ प्रकार है? – Raz

+0

मुझे नहीं पता कि। – Zeno

उत्तर

0

क्या आपने अपनी पायथन स्थापना बदल दी है? 3.x में, 2.x की तुलना में कम कोडेक प्रतीत होता है। विशेष रूप से, hex और base64 गायब हैं, AFAIK।

+0

नहीं। मैं हमेशा पाइथन 2.6.2 – Zeno

1

मुझे इस समस्या का भी सामना करना पड़ा है, लेकिन यह उस कंप्यूटर पर खुश हुआ जिसकी मुझे पहुंच नहीं थी।

मैं नाम दिया गया है एन्कोडिंग/hex_codec.py (और .pyc हटाए गए) देखो क्या कर देगा की तरह इस त्रुटि हो

ActivePython 2.7.0.2 (ActiveState Software Inc.) based on 
Python 2.7 (r27:82500, Aug 23 2010, 17:18:21) [MSC v.1500 32 bit (Intel)] on win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import json 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "c:\Python27\lib\json\__init__.py", line 108, in <module> 
    from .decoder import JSONDecoder 
    File "c:\Python27\lib\json\decoder.py", line 24, in <module> 
    NaN, PosInf, NegInf = _floatconstants() 
    File "c:\Python27\lib\json\decoder.py", line 18, in _floatconstants 
    _BYTES = '7FF80000000000007FF0000000000000'.decode('hex') 
LookupError: unknown encoding: hex 
>>> 

आपकी फ़ाइलों की जाँच, hex_encoding शायद याद आ रही है। या आपके पास अपने पाथ/PYTHON_HOME

में कुछ अजीब हो सकता है क्या आप कोड चलाने से पहले printenv कर सकते हैं? और दुभाषिया में "प्रिंट sys.path"?

सुनिश्चित करें कि आप अजगर 2.7.X स्थापित किया है:

2

मैं एक ही समस्या (json के साथ), समाधान अपने 'एनकोडिंग' लिब फ़ोल्डर में लापता 'hex_codec.py' फ़ाइल की प्रतिलिपि करने के लिए है का सामना कर रहा है (आप इसे बाद में उपयोगी पाएंगे)।

  1. 'एनकोडिंग' फ़ोल्डर के लिए अपने अजगर 2.7.X स्थापना निर्देशिका पर जाएँ (। विन मंच के लिए उदा: 'C: \ Python27 \ लिब \ एनकोडिंग')
  2. कॉपी 'hex_codec.py' या हर एक '.py' फ़ाइल को आपके 'build/bdist.linux-i686/अंडे/एन्कोडिंग' फ़ोल्डर में फ़ाइल करें। ...
  3. लाभ
+1

का उपयोग कर रहा हूं ऐसा लगता है कि binascii.so मौजूद है, binascii.py – alanjds

+0

के बजाय कोई विचार क्या है इसका मूल कारण क्या है? – jterrace

1

मैं एक ही android-python27 (https://code.google.com/p/android-python27/issues/detail?id=30) की कोशिश कर रहा समस्या मिला है।

पीईपीई से binascii.py संस्करण की प्रतिलिपि बनाकर हल किया गया, और binascii.so को कोशिश करने और शुद्ध-पायथन पर फ़ॉलबैक को बाइनरी आयात नहीं कर सकता है।

यहाँ परिणाम प्राप्त करें: https://gist.github.com/alanjds/6091309

+0

ने इसे एक स्थिर पायथन निर्माण पर देखा। 'मॉड्यूल/सेटअप' में binascii सक्षम करके हल किया गया। – minghua

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