Изменение браузера для ноутбука IPython с системного значения по умолчанию
Я бы хотел, чтобы firefox был моим браузером по умолчанию на моем Mac, но запустил IPython Notebook в Chrome [1].
Этот ответ привел меня к моему файлу ipython_notebook_config.py
но я не могу получить экземпляр Chrome. После c = get_config()
и import webbrowser
я попытался:
-
webbrowser.register(u'chrome', None, webbrowser.Chrome())
-
webbrowser.register(u'chrome', webbrowser.Chrome)
-
webbrowser.register(u'chrome', None, webbrowser.GenericBrowser('/Applications/Browsers/Chrome.app'))
-
webbrowser.register(u'chrome', None, webbrowser.GenericBrowser('/Applications/Browsers/Chrome.app/Contents/MacOS/Google\ Chrome'))
Все за ним следует c.NotebookApp.browser = u'chrome'
Я webbbrowser
в интерпретаторе и не мог понять, как создать экземпляр Chrome.
[1]: PS Почему IPython Notebook настолько медленный в firefox, особенно для pylab с встроенным бэкэндом?Он на порядок быстрее (для рендеринга, прокрутки и т.д.) В хроме.
Ответы
Ответ 1
Основываясь на этом ответе (запуск Python 2.7.3 и IPython-0.13.1 на Linux), все, что мне нужно было установить в моем ipython_notebook_config.py
было
c.NotebookApp.browser = u'/usr/bin/google-chrome %s'
Я предполагаю, установив c.NotebookApp.browser
в /Applications/Browsers/Chrome.app/Contents/MacOS/Google Chrome %s
должен работать на вас.
Ответ 2
Поскольку большой коммутатор Jupyter и последние версии OS X (например, Yosemite), Jupyter/iPython (например, 4.0.1) и Chrome (например, 47), все немного изменилось. Jupyter/iPython больше не переносит конфигурационный файл ноутбука в ~/.ipython
; теперь он находится в ~/.jupyter
, и файл по умолчанию создается с помощью
jupyter notebook --generate-config
Если у вас есть существующий ipython_notebook_config.py
вы можете перенести его с jupyter migrate
(H/T).
После создания или переноса вашего файла конфигурации добавьте следующую строку в jupyter_notebook_config.py
:
c.NotebookApp.browser = u'/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome %s'
Ответ 3
В OS X вы можете поместить следующее в ipython_notebook_config.py, чтобы открыть Chrome:
c.NotebookApp.browser = u'/usr/bin/open -a Google\\ Chrome %s'
Исполняемый файл "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" не позволяет мне "не удается получить блокировку профиля", поэтому просмотр "open" - единственная простая альтернатива, которую я вижу.
Ответ 4
Возможно, это не то, что нужно делать, но
$ open -a Google\ Chrome http://localhost:8888
$ open -a Firefox http://localhost:8888
Работает от меня (только на Mac), чтобы открыть любой URL-адрес в одном из двух браузеров.
Используйте опцию --no-browser
и создайте функцию bash, которая делает это. Или даже есть закладка в Chrome.
Ответ 5
Для людей, которые хотят сделать firefox своим дефолтом для ноутбуков ipython (где это не обязательно является системным по умолчанию), добавление следующей строки в ipython_notebook_config.py
должно быть достаточным:
c.NotebookApp.browser = 'Firefox'
Для меня это было лучше, чем привязка к файлу приложения напрямую, потому что он избегает ошибки: A copy of Firefox is already open. Only one copy of Firefox can be open at a time.
A copy of Firefox is already open. Only one copy of Firefox can be open at a time.
Ответ 6
Это работало для меня на OSX Mavericks:
c.NotebookApp.browser = u'/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome %s'
Ответ 7
Если вы вообще не хотите открывать браузер, вы можете добавить ipython notebook --no-browser
.
Ответ 8
Для справок в будущем это выглядит как самый элегантный способ редактирования jupyter_notebook_config.py
для меня на macOS:
c.NotebookApp.browser = u'open -a "Google Chrome" %s'
Вы можете, очевидно, заменить "Google Chrome"
на любой другой браузер.
Полная процедура:
-
jupyter notebook --generate-config
-
open./jupyter/jupyter_notebook_config.py
- Найдите строку
#c.NotebookApp.browser
и отредактируйте ее, как указано выше.