Запустить IPython-ноутбук с выбранным браузером
Я пытаюсь запустить IPython с браузером не по умолчанию (в моем случае Firefox)
и подумал, что я мог бы реплицировать репликацию script в в этом блоге
Я нахожусь в Windows 7
Я помещаю в код следующий код: "module.py"
import subprocess
subprocess.call("ipython notebook --no-browser", shell=True)
subprocess.call([r'C:\Program Files (x86)\Mozilla Firefox\Firefox.exe', '-new-tab', 'http://127.0.0.1:8888/'])
Однако, когда я запускаю его из командной строки
python C:\Users\mugabal\Desktop\module1.py
Выполняет первую строку, но не вторую (обе линии работают отлично)
Мой вопрос (в более общем термине), как я могу запустить процесс и сказать ему, чтобы не переиграть окно консоли?
Я извиняюсь заранее, если я наблюдал за очевидным объяснением, но я смотрел как в документации по подпроцессу, так и на этой платформе
----- UPDATE -----
Я должен был добавить, что я пытался запустить IPython с выбранным браузером, но не мог понять, как заставить его работать
>ipython notebook --browser='C:\Program Files (x86)\Mozilla Firefox\Firefox.exe'
...
[NotebookApp] The IPython Notebook is running at: http://127.0.0.1:8888/
...
**[NotebookApp] No web browser found: could not locate runnable browser.**
Чтобы быть точным, следующая команда в окне командной строки Windows работает так, как ожидалось:
start firefox
но
ipython notebook --browser=firefox
не работает (такая же ошибка, как указано выше).
Ответы
Ответ 1
У меня была такая же проблема на окнах, и я работал так:
-
Создайте файл конфигурации с командой
ipython profile create default
-
Отредактируйте файл ipython_notebook_config.py, найдите строку
#c.NotebookApp.browser =''
и замените его на
import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe'))
c.NotebookApp.browser = 'firefox'
тогда он работает для меня.
Надеюсь, это поможет вам.
JPG
Ответ 2
Почему бы не использовать
--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
Ответ 3
На моем mac я получил следующую команду для использования Firefox вместо моего Chrome по умолчанию:
jupyter notebook --browser firefox
Ответ 4
Я раскомментирую эту строку и перейду в False, чтобы не сделать ipython-ноутбук открытым в начале браузера, поэтому мы можем указать адрес ноутбука ipython в активном веб-браузере.
# 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
Еще лучше, я привязываю адрес в своем Firefox, чтобы он был активен каждый раз, когда я открываю браузер.
Ответ 5
Это не реальный ответ. Я просто хочу поделиться с менее сообразительным компьютером, что ответ JPG выглядит поэтапно. Предположительно, в проводнике Windows (скриншот, прикрепленный ниже) отображается файл jupyter_notebook_config.py
:
![введите описание изображения здесь]()
В моем случае каталог для файла (в верхнем меню проводника) был C:\Users\My_name\.jupyter
Вторая часть ответа может быть реализована путем простого вставки:
import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe'))
c.NotebookApp.browser = 'firefox'
в пространстве на пространстве, показанном на снимке экрана ниже, соответствующем jupyter_notebook_config.py
, открытом в PyCharm:
![введите описание изображения здесь]()
... только, что я установил его для открытия в Opera:
import webbrowser
webbrowser.register('opera', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Opera\\launcher.exe'))
c.NotebookApp.browser = 'opera'
Ответ 6
Я установил переменную среды BROWSER в исполняемый файл браузера (в моем случае Google Chrome), а Ipython Notebook запустился в понравившемся браузере.
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).
Ответ 7
Я пробовал, что предложил JPG и norfeldt. Он отлично работал на моем компьютере с Windows 7. Вот копия измененного раздела ipython_notebook_config.py(расположенного под C:\Users\'your userername' \. Ipython, чтобы использовать Safari в качестве браузера по умолчанию для ноутбука. Как сказал норфелдт, обратите внимание на u перед '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'
Ответ 8
Без кодирования вы можете просто установить браузер по умолчанию в Chrome или Firefox и т.д. Он работает для моей системы Windows.