2
votes

Comment réparer le "type de protocole incorrect pour le socket" dans le notebook Jupyter

J'ai installé anaconda3 avec python 3.x dans le processeur 64 bits professionnel de Windows 7. Lors de l'ouverture d'un nouveau notebook jupyter dans le noyau python 3 . Il affiche le message d'erreur comme

"Échec de l'assertion: type de protocole incorrect pour le socket [10041] c: \ ci \ zeromq_1549025594292 \ work \ src \ ip.cpp: 417 "

et python a cessé de fonctionner. Veuillez aider à résoudre le problème.

Cordialement, Geetha S

attendez-vous à ce que le nouveau notebook soit ouvert pour le codage


1 commentaires

Avoir le même problème. Avez-vous déjà résolu ce problème?


3 Réponses :


0
votes

Je pense que ma réponse est peut-être un peu tardive Cette erreur vient du fait que la version python installée sur votre PC est plus ancienne que la version du notebook jupyter pour résoudre ce problème, vous pouvez rétrograder votre version via la commande conda ou il suffit de créer un nouvel environnement:
conda create -n py35 python = 3.5 anaconda
n'oubliez pas de changer votre propre version


0 commentaires

1
votes

a finalement résolu celui-ci en utilisant 2 méthodes alternatives:

  1. accédez à archive repo et téléchargez anaconda3 5.3.1 à partir de novembre 2018 (il s'agit de la version la plus ancienne avec python 3.7). Cela a aidé mes problèmes, en faisant correspondre les versions de python et jupyter etc. [en passant, si vous utilisez l'archive pour télécharger des versions plus anciennes, le lien ci-dessous vous indique la version de python fonctionnant avec cette version particulière d'anaconda lien ]

  2. Une solution consiste à télécharger la dernière version possible et à créer un nouvel environnement avec python 3.5 ou 3.6 comme expliqué ci-dessus. Pour ce faire:

-in anaconda, tapez soit:

"conda create -n py35 python = 3.5 anaconda" ou

"conda create -n py36 python = 3.6 anaconda".

Cela prend un certain temps, mais à la fin, il vous sera demandé de taper quelque chose comme:

"conda activate py36" pour activer le nouvel environnement.

pour vous assurer qu'il est activé, tapez:

"conda info --envs".

Dans la liste des environnements qui s'affiche, l'environnement actif est mis en évidence par un astérisque (*). Cela devrait fonctionner, mais juste pour être sûr, accédez au navigateur anaconda, puis aux environnements sur le côté gauche. clic gauche sur le "bouton de lecture" et "ouvrir avec le notebook jupyter"


0 commentaires

0
votes

J'ai également eu le même problème (également sous Windows 7) et j'ai réussi à le faire fonctionner. Comme les réponses ici semblaient plutôt non spécifiques, j'ai pensé enregistrer les étapes que j'avais suivies.

En gros, je n'ai pas compris ce qui n'allait pas, mais j'ai juste essayé différentes versions jusqu'à ce que cela fonctionne. Mon miniconda3 de base était 64 bits, bien que je ne pense pas que cela compte, car j'ai créé un deuxième environnement non basique pour fonctionner. Quoi qu'il en soit, mon programme d'installation miniconda3 était

C:\Users\username\miniconda3\envs\python36\lib\site-packages\notebook\services\kernels\kernelmanager.py:19: 
    VisibleDeprecationWarning: zmq.eventloop.minitornado is deprecated in pyzmq 14.0 and will be removed.
    Install tornado itself to use zmq with the tornado IOLoop.

De plus, les autres réponses disent installer anaconda, ce qui prend beaucoup de temps et beaucoup d'espace disque. Je viens d'utiliser miniconda, qui est plus petit, plus rapide à installer, et vous pouvez télécharger les mêmes packages que vous trouvez que vous en avez besoin.

Mes étapes étaient

  1. Créer un nouvel environnement python 3.6
  2. Installez jupyter dans le nouvel environnement
  3. Rétrograder la version de zeromq dans l'environnement.
  4. J'ai également installé numpy, dont j'avais besoin pour les blocs-notes que j'utilisais.

Voici les commandes que j'ai utilisées:

set conda_root=C:\Users\username\miniconda3
set work_root=D:\projects\EdX

d:
cd %work_root%

call %conda_root%\Scripts\activate.bat python36

call jupyter notebook

echo Jupyter server stopped

pause

Voici les versions de paquets avec lesquelles j'ai fini (j'en ai oublié certaines que je pensais sans importance):

ipykernel                 5.1.4            py36h39e3cac_0
ipython                   7.13.0           py36h5ca1d4c_0
ipython_genutils          0.2.0                    py36_0
ipywidgets                7.5.1                      py_0
jupyter                   1.0.0                    py36_7
jupyter_client            6.1.3                      py_0
jupyter_console           6.1.0                      py_0
jupyter_core              4.6.3                    py36_0
libsodium                 1.0.16               h9d3ae62_0
matplotlib                3.1.3                    py36_0
matplotlib-base           3.1.3            py36h64f37c6_0
mkl                       2020.1                      216
mkl-service               2.3.0            py36hb782905_0
mkl_fft                   1.0.15           py36h14836fe_0
mkl_random                1.1.1            py36h47e9c7a_0
msys2-conda-epoch         20160418                      1
notebook                  6.0.3                    py36_0
numpy                     1.18.1           py36h93ca92e_0
numpy-base                1.18.1           py36hc3f5095_1
prompt-toolkit            3.0.5                      py_0
prompt_toolkit            3.0.5                         0
python                    3.6.10               h9f7ef89_2
python-dateutil           2.8.1                      py_0
pywin32                   227              py36he774522_1
pywinpty                  0.5.7                    py36_0
pyzmq                     17.0.0           py36hfa6e2cd_0
qt                        5.9.7            vc14h73c81de_0
sqlite                    3.31.1               h2a8f88b_1
terminado                 0.8.3                    py36_0
testpath                  0.4.4                      py_0
tornado                   6.0.4            py36he774522_1
winpty                    0.4.3                         4
zeromq                    4.2.2                h7a7be3a_2

Pour démarrer jupyter, j'ai créé un fichier .bat:

conda create --name python36 python=3.6
conda activate python36
conda install zeromq=4.2.2
conda install numpy

(La racine_travail est l'endroit où se trouvent mes fichiers .ipynb.)

La commande pause est là pour garder la fenêtre cmd.exe ouverte afin que vous puissiez lire tous les messages ou erreurs que jupyter y consigne, mais vous devez fermer la fenêtre manuellement à chaque fois que vous arrêtez le serveur.

Je reçois un avertissement d'obsolescence dans ma fenêtre Anaconda Prompt cmd.exe:

Miniconda3-latest-Windows-x86_64.exe 2020-03-11 10:38:26    20d6bd9b3bd62f1fd874315b6b38c159

mais à ce stade, je m'en fiche.


0 commentaires