“ERROR: tornado.application: Excepción no detectada GET” al iniciar ipython-notebook

Después de instalar anaconda 2.0.1 amd64 en mi Windows7, recibo el siguiente error al iniciar ipython-notebook:

ERROR:tornado.application:Uncaught exception GET /static/components/jquery-ui/th emes/smoothness/jquery-ui.min.css?v=60f0405edd95e7135ec6a0bbc36d1385 (127.0.0.1) HTTPRequest(protocol='http', host='localhost:8888', method='GET', uri='/static/c omponents/jquery-ui/themes/smoothness/jquery-ui.min.css?v=60f0405edd95e7135ec6a0 bbc36d1385', version='HTTP/1.1', remote_ip='127.0.0.1', headers={'Accept-Languag e': 'zh-CN,zh;q=0.8,en;q=0.6', 'Accept-Encoding': 'gzip,deflate,sdch', 'X-Forwar ded-For': '211.166.224.142', 'Host': 'localhost:8888', 'Accept': 'text/css,*/*;q =0.1', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, li ke Gecko) Chrome/33.0.1750.154 Safari/537.36', 'Connection': 'keep-alive', 'Refe rer': 'http://localhost:8888/tree'}) Traceback (most recent call last): File "C:\Anaconda\lib\site-packages\tornado\web.py", line 1270, in _when_compl ete callback() File "C:\Anaconda\lib\site-packages\tornado\web.py", line 1291, in _execute_me thod self._when_complete(method(*self.path_args, **self.path_kwargs), File "C:\Anaconda\lib\site-packages\tornado\web.py", line 1954, in get self.set_headers() File "C:\Anaconda\lib\site-packages\tornado\web.py", line 2032, in set_headers content_type = self.get_content_type() File "C:\Anaconda\lib\site-packages\tornado\web.py", line 2210, in get_content _type mime_type, encoding = mimetypes.guess_type(self.absolute_path) File "C:\Anaconda\lib\mimetypes.py", line 287, in guess_type init() File "C:\Anaconda\lib\mimetypes.py", line 348, in init db.read_windows_registry() File "C:\Anaconda\lib\mimetypes.py", line 256, in read_windows_registry with _winreg.OpenKey(hkcr, subkeyname) as subkey: WindowsError: [Error 2] ERROR:tornado.access:{ "Accept-Language": "zh-CN,zh;q=0.8,en;q=0.6", "Accept-Encoding": "gzip,deflate,sdch", "X-Forwarded-For": "211.166.224.142", "Connection": "keep-alive", "Accept": "text/css,*/*;q=0.1", "User-Agent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Ge cko) Chrome/33.0.1750.154 Safari/537.36", "Host": "localhost:8888", "Referer": "http://localhost:8888/tree" } 

El rastro completo está aquí . Busqué en Internet y encontré esta publicación con un problema similar, pero aún así no pude resolver el mío: el archivo mimetypes.py parece haber cambiado.

Intenté cambiar el código en la función enum_types en mimetypes.py :

 try: ctype = _winreg.EnumKey(mimedb, i) except EnvironmentError: break 

a:

 try: ctype = _winreg.EnumKey(mimedb, i) #except EnvironmentError: # break finally: pass 

pero sin suerte. El error se produce en la PC de un amigo mío, lo siento mucho por no poder reproducirlo y ofrecer más detalles.

Acabo de tener el mismo problema y por favor vea mi solución:

El problema es que la variable subkeyname contiene una cadena ilegible para la función _winreg.OpenKey. Probablemente se deba a que algún software chino agregó valores no Unicode al registro (Ali-Wangwang, un sospechoso principal). Así que necesitas atrapar tales excepciones y simplemente pasarlas por alto.

Aquí está el código original a partir de la línea 256:

 with _winreg.OpenKey(hkcr, subkeyname) as subkey: # If there is no "Content Type" value, or if it is not # a simple string, simply skip try: mimetype, datatype = _winreg.QueryValueEx( subkey, 'Content Type') except EnvironmentError: continue if datatype != _winreg.REG_SZ: continue self.add_type(mimetype, subkeyname, strict) 

Simplemente agregue un bloque “intentar: … excepto” para superar la excepción de error de Windows:

 try: with _winreg.OpenKey(hkcr, subkeyname) as subkey: # If there is no "Content Type" value, or if it is not # a simple string, simply skip try: mimetype, datatype = _winreg.QueryValueEx( subkey, 'Content Type') except EnvironmentError: continue if datatype != _winreg.REG_SZ: continue self.add_type(mimetype, subkeyname, strict) except EnvironmentError: continue 

Esto funciona para mi Espero eso ayude.

  def enum_types(mimedb): i = 0 while True: try: ctype = _winreg.EnumKey(mimedb, i) except EnvironmentError: break else: if '\0' not in ctype: # add this line to mimetypes.py yield ctype i += 1