2014-09-23 3 views
0

EDIT 패키지를 설치할 때 \ Python27 \ 리브 \ mimetypes.py 및 try 블록에 코드 단점 추가 :Mimetypes.init() 에러 PIP와

## Begin to line 245 :  
try: 
    ctype = _winreg.EnumKey(mimedb, i) 
except EnvironmentError: 
    break 
try: 
    ctype = ctype.encode(default_encoding) # omit in 3.x! 
except UnicodeEncodeError: 
    pass 

## Here, add the universal Exception missing. 
except Exception: 
    pass 

else: 
    yield ctype 

I을 3 일 전부터 검색 중이지만이 문제를 해결하는 것은 나에게 너무 어렵습니다. 나는 문제가있는 곳을 압도하지 않는다.

GitHub, PowerShell 3 등을 사용하여 패키지를 설치하려고했습니다. 모두 작동하지 않습니다. PIP 느릅 나무가

내가 PIP를 사용하여 tweepy를 설치하려고,이 오류가 추가 ... 약간의 버그가있는 것 제외 :

Microsoft Windows [version 6.2.9200] 
(c) 2012 Microsoft Corporation. Tous droits réservés. 

C:\Users\user>pip install tweepy 
Downloading/unpacking tweepy 
    Downloading tweepy-2.3.0.tar.gz 
Cleaning up... 
Exception: 
Traceback (most recent call last): 
    File "C:\Python27\lib\site-packages\pip\basecommand.py", line 122, in main 
    status = self.run(options, args) 
    File "C:\Python27\lib\site-packages\pip\commands\install.py", line 278, in run 

    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundl 
e=self.bundle) 
    File "C:\Python27\lib\site-packages\pip\req.py", line 1229, in prepare_files 
    req_to_install.run_egg_info() 
    File "C:\Python27\lib\site-packages\pip\req.py", line 292, in run_egg_info 
    logger.notify('Running setup.py (path:%s) egg_info for package %s' % (self.s 
etup_py, self.name)) 
    File "C:\Python27\lib\site-packages\pip\req.py", line 265, in setup_py 
    import setuptools 
    File "C:\Python27\lib\site-packages\setuptools\__init__.py", line 12, in <modu 
le> 
    from setuptools.extension import Extension 
    File "C:\Python27\lib\site-packages\setuptools\extension.py", line 7, in <modu 
le> 
    from setuptools.dist import _get_unpatched 
    File "C:\Python27\lib\site-packages\setuptools\dist.py", line 16, in <module> 
    from setuptools.depends import Require 
    File "C:\Python27\lib\site-packages\setuptools\depends.py", line 6, in <module 
> 
    from setuptools import compat 
    File "C:\Python27\lib\site-packages\setuptools\compat.py", line 19, in <module 
> 
    from SimpleHTTPServer import SimpleHTTPRequestHandler 
    File "C:\Python27\lib\SimpleHTTPServer.py", line 27, in <module> 
    class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler): 
    File "C:\Python27\lib\SimpleHTTPServer.py", line 208, in SimpleHTTPRequestHand 
ler 
    mimetypes.init() # try to read system mime.types 
    File "C:\Python27\lib\mimetypes.py", line 358, in init 
    db.read_windows_registry() 
    File "C:\Python27\lib\mimetypes.py", line 258, in read_windows_registry 
    for subkeyname in enum_types(hkcr): 
    File "C:\Python27\lib\mimetypes.py", line 249, in enum_types 
    ctype = ctype.encode(default_encoding) # omit in 3.x! 
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 3: ordinal 
not in range(128) 

Storing debug log for failure in C:\Users\user\pip\pip.log 

당신은 나를 설명 할 수,이 방법 repear하기 바랍니다 ?

미리 감사드립니다. SkyzohKey.

+0

, 그리고'C 무엇을 않습니다 : \ 사용자 \ 사용자 \ 핍 \ pip.log'라고? – thebjorn

+0

'pip --version'은 프로그램이 발견되지 않았다는 것을 아무것도하지 않습니다. 그리고 로그 파일은 다음과 같습니다 : http://textup.fr/105784KS – SkyzohKey

+0

'pip --version'은 설치를 위해 호출 할 때 어떻게하지 않습니다 ('C : \ Users \ user> pip install tweepy') .. – thebjorn

답변

0

Windows 레지스트리에 문제를 일으키는 mimetype이있는 것 같습니다. 당신이 그것에 대해 어떻게해야

import _winreg 


def find_funky_mimetype(): 
    default_encoding = sys.getdefaultencoding() 
    with _winreg.OpenKey(_winreg.HKEY_CLASSES_ROOT, 
         r'MIME\Database\Content Type') as mimedb: 
     i = 0 
     while 1: 
      try: 
       ctype = _winreg.EnumKey(mimedb, i) 
      except EnvironmentError: 
       break 
      print 'testing:', `ctype`, 
      try: 
       ctype = ctype.encode(default_encoding) # omit in 3.x! 
      except UnicodeEncodeError: 
       print 'expected failure' 
      except Exception as e: 
       print 'unexpected failure:', e 
      else: 
       print 'ok.' 
      i += 1 


if __name__ == "__main__": 
    find_funky_mimetype() 

당신에게 전적으로이며 (예 : 레지스트리에서 잘못된 마임을 제거하거나 추가로 편안하게 무엇을 : 당신은 어느 쪽이 알아 내기 위해 다음과 같은 스크립트를 실행할 수 있습니다 보편적으로`c : \ Python27 \ lib \ mimetypes.py의 252 행을 제외하고는 위에서 설명한 것과 비슷하다.).

+0

스크립트를 실행하는 동안 어떤 종류의 오류도 없다. 모든 mimetype은 "ok"이다. (ps : sys를 가져 오는 것을 잊어 버리십시오 ^^) – SkyzohKey

+0

문제가 해결되었습니다! Exception x에 대해 감사드립니다. – SkyzohKey

0

변화 라인 (250)`--version` 인쇄를 핍 무엇

except (UnicodeEncodeError, UnicodeDecodeError): 
    pass 
+0

나는 이미 문제를 해결했다. :엑스 – SkyzohKey