Lancement du bloc-notes IPython avec le navigateur sélectionné

j'essaie de lancer IPython avec un navigateur non par défaut (dans mon cas Firefox) et j'ai pensé que je pourrais répliquer la réplique du script donné dans ce blog

je suis sur Windows 7

j'ai mis le code suivant dans un fichier DIT "module.py"

import subprocess
subprocess.call("ipython notebook --no-browser", shell=True)
subprocess.call([r'C:Program Files (x86)Mozilla FirefoxFirefox.exe', '-new-tab', 'http://127.0.0.1:8888/'])

Cependant quand je le lance depuis la ligne de commande

 python C:UsersmugabalDesktopmodule1.py

il exécute la première ligne mais pas la deuxième (les deux lignes fonctionnent bien individuellement)

ma question (dans un terme plus général) Comment puis-je lancer un processus et lui dire de ne pas highjacker la fenêtre de la console?

Je m'excuse à l'avance si j'ai supervisé une explication évidente mais j'ai regardé à la fois dans la documentation du sous-processus et sur cette plate-forme

----- mise à JOUR -----

j'aurais dû ajouter que j'ai essayé de lancer IPython avec un navigateur sélectionné mais que je n'ai pas trouvé comment le faire fonctionner

>ipython notebook --browser='C:Program Files (x86)Mozilla FirefoxFirefox.exe'
... 
[NotebookApp] The IPython Notebook is running at: http://127.0.0.1:8888/
...
**[NotebookApp] No web browser found: could not locate runnable browser.**

pour être précis, la commande suivante dans une fenêtre d'invite de commandes Windows fonctionne comme prévu:

start firefox 

mais

ipython notebook --browser=firefox 

ne fonctionne pas (même erreur que ci-dessus).

40
demandé sur Ross Ridge 2013-03-26 12:43:25

8 réponses

j'ai eu le même problème sur windows et il a obtenu de cette façon:

  • Créer un fichier de configuration avec la commande ipython profile create default

  • Modifier ipython_notebook_config.py fichier, recherchez la ligne

#c.NotebookApp.browser =''

et le remplacer par

import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('C:\Program Files (x86)\Mozilla Firefox\firefox.exe'))
c.NotebookApp.browser = 'firefox'

alors ça marche pour moi.

j'Espère qu'il vous aidera.

JPG

59
répondu JPG 2013-04-01 17:54:31

sur mon mac, j'ai la commande suivante pour utiliser Firefox au lieu de mon Chrome par défaut:

jupyter notebook --browser firefox
18
répondu JBWhitmore 2016-10-04 19:20:47

Pourquoi ne pas utiliser

--browser=<Unicode> (NotebookApp.browser)
    Specify what command to use to invoke a web browser when opening the
    notebook. If not specified, the default browser will be determined by the
   `webbrowser` standard library module, which allows setting of the BROWSER
9
répondu Matt 2013-03-26 09:32:26

Ce n'est pas une vraie réponse. Je veux juste partager avec ceux qui connaissent moins l'ordinateur ce que la réponse de JPG ressemble à une étape par étape. Vraisemblablement, sur Windows Explorer (capture d'écran ci-dessous), le fichier jupyter_notebook_config.py est indiqué:

enter image description here

dans mon cas, le répertoire du fichier (dans le menu supérieur de L'explorateur) était C:\Users\My_name\.jupyter

la seconde partie de la réponse peut être implémentée en collant simplement:

import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('C:\Program Files (x86)\Mozilla Firefox\firefox.exe'))
c.NotebookApp.browser = 'firefox'

dans l'espace l'Espace vu sur la capture d'écran ci-dessous, correspondant au jupyter_notebook_config.py ouvert au sein de PyCharm:

enter image description here

... seulement que je l'ai configuré pour ouvrir à l'Opéra:

import webbrowser
webbrowser.register('opera', None, webbrowser.GenericBrowser('C:\Program Files (x86)\Opera\launcher.exe'))
c.NotebookApp.browser = 'opera'
6
répondu Toni 2017-06-04 17:30:22

Je décommente cette ligne et je change en False, pour ne pas faire ouvrir le notebook d'ipython un navigateur Web au début, de sorte que nous pouvons pointer l'adresse du notebook d'ipython dans un navigateur web actif.

# Whether to open in a browser after starting. The specific browser used is
# platform dependent and determined by the python standard library `webbrowser`
# module, unless it is overridden using the --browser (NotebookApp.browser)
# configuration option.
c.NotebookApp.open_browser = False

mieux encore, j'épingle l'adresse dans mon Firefox pour la rendre active à chaque fois que j'ouvre le navigateur.

4
répondu mbendhel 2013-08-30 10:25:46

j'ai paramétré la variable D'environnement BROWSER sur l'exécutable du navigateur (dans mon cas Google Chrome), et IPython Notebook a commencé dans le navigateur que j'ai aimé.

PS H:\> $env:BROWSER = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
PS H:\> $env:BROWSER
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
PS H:\>
PS H:\> ipython notebook
2015-02-19 14:05:01.690 [NotebookApp] Using existing profile dir: C:\Users\abc\.ipython\profile_default'
2015-02-19 14:05:01.832 [NotebookApp] Using MathJax from CDN: http://cdn.mathjax.org/mathjax/latest/MathJax.js
2015-02-19 14:05:01.901 [NotebookApp] The port 8888 is already in use, trying another random port.
2015-02-19 14:05:01.908 [NotebookApp] Serving notebooks from local directory: H:\
2015-02-19 14:05:01.908 [NotebookApp] 0 active kernels
2015-02-19 14:05:01.910 [NotebookApp] The IPython Notebook is running at: http://localhost:8889/
2015-02-19 14:05:01.910 [NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
1
répondu user1843683 2015-02-20 16:33:57

j'ai essayé ce que JPG et norfeldt ont suggéré. Cela a parfaitement fonctionné sur mon ordinateur Windows 7. Voici une copie de la section modifiée de ipython_notebook_config.py (situé sous C:\Users\ 'votre nom d'utilisateur'\.ipython pour utiliser Safari comme navigateur par défaut pour notebook. Comme l'a dit norfeldt, veuillez noter le u avant ' C:\...)

# c.NotebookApp.certfile = u''

import webbrowser
webbrowser.register('safari', None, webbrowser.GenericBrowser(u'C:\Program Files (x86)\Safari\safari.exe'))
c.NotebookApp.browser = 'safari'
0
répondu user3059413 2013-12-03 00:19:11

sans codage, vous pouvez simplement configurer votre navigateur par défaut pour Chrome ou Firefox, etc. Ça marche pour mon système windows.

-2
répondu Ye Xu 2016-09-09 14:10:37