web-dev-qa-db-fra.com

Erreur d'importation: DLL le chargement a échoué dans le bloc-notes Jupyter mais dans un fichier .py

J'ai installé BreakoutDetection le module dans l'environnement Anaconda. Lorsque j'ai essayé d'importer le module en utilisant import breakout_detection dans le cahier jupyter, l'erreur ci-dessous s'est produite.

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-18-96c0fdb15b96> in <module>()
----> 1 import breakout_detection

C:\Users\sgadiyar\AppData\Local\Continuum\Anaconda2\lib\site-packages\breakout_detection.py in <module>()
     15         except ImportError:
     16             return importlib.import_module('_breakout_detection')
---> 17     _breakout_detection = swig_import_helper()
     18     del swig_import_helper
     19 Elif _swig_python_version_info >= (2, 6, 0):

C:\Users\sgadiyar\AppData\Local\Continuum\Anaconda2\lib\site-packages\breakout_detection.py in swig_import_helper()
     14             return importlib.import_module(mname)
     15         except ImportError:
---> 16             return importlib.import_module('_breakout_detection')
     17     _breakout_detection = swig_import_helper()
     18     del swig_import_helper

C:\Users\sgadiyar\AppData\Local\Continuum\Anaconda2\lib\importlib\__init__.pyc in import_module(name, package)
     35             level += 1
     36         name = _resolve_name(name[level:], package, level)
---> 37     __import__(name)
     38     return sys.modules[name]

ImportError: DLL load failed: The specified procedure could not be found.

Je pourrais importer le même module en python Shell

J'ai regardé les chemins du système (print sys.path) et à la fois dans Python Shell et jupyter notebook. Ils sont tous les deux identiques. Le chemin de l'exécutable (print sys.executable) est également le même pour les deux. 

Quelqu'un peut-il m'aider sur les étapes à suivre pour résoudre ce problème? Merci!

4
ultramarine

J'ai rencontré le même problème avec l'ordinateur portable Jupyter de PowerShell. Même si la question a été posée il y a un an, je réponds ici pour aider ceux qui rencontrent la même erreur récemment. Dans mon cas, d’abord, j’ai activé l’environnement racine activate base puis j’ai exécuté jupyter notebook et cela a fonctionné correctement. Une fois que vous avez activé la base, vous remarquerez que l'invite changera comme suit: "(base) X:\Utilisateurs\xxxxx\nom-répertoire actuel>". 

  • Remarque que la commande activate base ne fonctionnera pas sur Powershell. Vous devez passer à l'invite de commande en cours d'exécution cmd ou vous Pouvez essayer le tout dans l'invite de commande au lieu de PowerShell.

  • Si les chemins requis
    (path:\to\Anaconda3\;path:\to\Anaconda3\Scripts;path:\to\Anaconda3\Library\mingw-w64\bin;path:\to\Anaconda3\Library\usr\bin;path:\to\Anaconda3\Library\bin) sont disponibles pour votre environnement PowerShell, vous n'avez donc pas besoin de
    activer l'environnement "de base".

14
picklu

Dans Windows, la racine active (base) de la commande Invite d’abord par 

activate root

puis 

jupyter notebook
5
Dheeraj

Si vous avez déjà ajouté Anaconda à la variable PATH, vous devez procéder comme suit:

activate base jupyter kernelspec list python -m ipykernel install --user

Ça a fonctionné pour moi

2
Akash Desarda

J'ai récemment réinstallé Anaconda dans un nouveau répertoire (de D: à C :). Après cela, l’ouverture et l’exécution de PowerShell (sous Windows 10) ont provoqué les mêmes erreurs. 

En suivant la réponse de @picklu, j'ai pu l'exécuter temporairement à partir du CMD (en exécutant «activer la base», puis «jupyter notebook»). Même 'activer la racine' a fonctionné au lieu d'activer la base. L'exécuter également à partir de conda Prompt, du navigateur Anaconda et du raccourci par défaut pour Jupyter Notebook a fonctionné. Cependant, en utilisant ces méthodes, je n'ai pas pu démarrer à partir du dossier dans lequel j'avais ouvert la fenêtre PowerShell (en utilisant Ctrl + Shift + mouseRightCLick).

Cependant, en suivant la deuxième partie de la réponse de @picklu, j’ai pu changer avec succès la variable système PATH de l’ancien lecteur D: au lecteur actuel C:.

J'ai ajouté ce qui suit:

  1. c:\utilisateurs\NOMUTILISATEUR\anaconda3
  2. c:\utilisateurs\NOMUTILISATEUR\anaconda3\scripts
  3. c:\utilisateurs\NOMUTILISATEUR\anaconda3\library\bin
  4. c:\utilisateurs\NOMUTILISATEUR\anaconda3\library\usr\bin

où c:\users\USERNAME\anaconda3 est l'emplacement d'installation d'Anaconda.

1
Hemang

J'ai rencontré le même problème lors de l'importation de sklearn. J'imagine que certains pakages ont besoin d'être mis à niveau. Je viens donc de lancer ( conda update --all ) pour mettre à niveau tous les pakages, et tout a finalement fonctionné.

1
Raywall