Au cours des dernières minutes, je n'ai pu accéder à aucun des fichiers .ipynb
précédemment créés avec Python3.4. Je vais dans le sous-répertoire avec ces fichiers, entrez
ipython3 notebook
Lorsque je clique sur un certain fichier .ipynb
, j'obtiens l'erreur suivante :
An unknown error occurred while loading this notebook. This version can load notebook formats v4 or earlier. See the server log for details.
[E 00:19:41.468 NotebookApp] Unhandled error in API request
Traceback (most recent call last):
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/traitlets/traitlets.py", line 460, in get
value = obj._trait_values[self.name]
KeyError: 'db'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/notebook/base/handlers.py", line 458, in wrapper
result = yield gen.maybe_future(method(self, *args, **kwargs))
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/tornado/gen.py", line 1008, in run
value = future.result()
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/tornado/concurrent.py", line 232, in result
raise_exc_info(self._exc_info)
File "<string>", line 3, in raise_exc_info
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/tornado/gen.py", line 282, in wrapper
yielded = next(result)
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/notebook/services/contents/handlers.py", line 124, in get
path=path, type=type, format=format, content=content,
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/notebook/services/contents/filemanager.py", line 354, in get
model = self._notebook_model(path, content=content)
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/notebook/services/contents/filemanager.py", line 314, in _notebook_model
self.mark_trusted_cells(nb, path)
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/notebook/services/contents/manager.py", line 447, in mark_trusted_cells
trusted = self.notary.check_signature(nb)
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/nbformat/sign.py", line 220, in check_signature
if self.db is None:
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/traitlets/traitlets.py", line 488, in __get__
return self.get(obj, cls)
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/traitlets/traitlets.py", line 467, in get
value = self._validate(obj, dynamic_default())
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/nbformat/sign.py", line 127, in _db_default
self.init_db(db)
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/nbformat/sign.py", line 139, in init_db
)""")
sqlite3.DatabaseError: database disk image is malformed
Comment résoudre ce problème ?
La base de données des signatures des ordinateurs portables a été corrompue. Pour l'écarter :
cd $(jupyter --data-dir)
mv nbsignatures.db nbsignatures.db.bak # Or just rm it - there's probably no use keeping the corrupt file
Nous travaillons à détecter l'erreur et à le faire automatiquement dans jupyter/nbformat#32.
Une fois que vous avez fait cela, tous les blocs-notes ne seront plus fiables. Cela signifie que vous devrez peut-être les réexécuter ou les faire confiance manuellement à partir du menu Fichier, avant qu'une sortie riche ne s'affiche.
Mon problème a été résolu avec
rm ~/Library/Jupyter/nbsignatures.db
Merci
supprimer ~/.ipython/profile_default/history_sqlite
Cela m'aide.
@KnightOfTheMoonlight Je pense que le fichier s'appelle "history.sqlite" au lieu de "history_sqlite".
Vérifiez l'espace disponible dans votre environnement de travail !!!
J'ai eu cette erreur lorsque le serveur n'avait pas d'espace.
@takluyver J'ai eu un problème similaire et vos suggestions ont fonctionné. Merci!
Vérifiez l'espace disponible dans votre environnement de travail !!!
J'ai eu cette erreur lorsque le serveur n'avait pas d'espace.
C'était aussi mon problème. Merci pour le conseil! Ça a marché!
Exécutez d'abord la commande suivante dans le terminal :
sudo jupyter notebook --allow-root
Ensuite, une URL apparaîtra dans le terminal, quelque chose comme :
http://localhost:8888/?token=f2704ecba4c88716337f33e79e13335380e25382603afb80
Enfin, copiez et collez cette URL dans un nouvel onglet de votre navigateur. Ensuite, le cahier jupyter s'ouvrira dans un nouvel onglet.
À votre santé!
Commentaire le plus utile
La base de données des signatures des ordinateurs portables a été corrompue. Pour l'écarter :
Nous travaillons à détecter l'erreur et à le faire automatiquement dans jupyter/nbformat#32.
Une fois que vous avez fait cela, tous les blocs-notes ne seront plus fiables. Cela signifie que vous devrez peut-être les réexécuter ou les faire confiance manuellement à partir du menu Fichier, avant qu'une sortie riche ne s'affiche.