Боке выдает RuntimeError всякий раз, когда я пытаюсь запустить export_png - PullRequest
0 голосов
/ 27 мая 2020

Я только что обновил все свои python пакеты, и некоторые из моих скриптов не работают должным образом. В частности, у Боке проблемы с функцией export_png.

Обычно это просто сохраняет копию моей диаграммы в определенном c каталоге. Теперь я получаю эту ошибку:

Traceback (most recent call last):

  File "C:\Users\ethan\projects\health\chart.py", line 112, in <module>
    p = column(make_chart(False), make_chart(True))

  File "C:\Users\ethan\projects\health\chart.py", line 106, in make_chart
    export_png(p, filename = name + '.png')

  File "C:\ProgramData\Anaconda3\lib\site-packages\bokeh\io\export.py", line 97, in export_png
    image = get_screenshot_as_png(obj, width=width, height=height, driver=webdriver, timeout=timeout)

  File "C:\ProgramData\Anaconda3\lib\site-packages\bokeh\io\export.py", line 201, in get_screenshot_as_png
    web_driver = driver if driver is not None else webdriver_control.get()

  File "C:\ProgramData\Anaconda3\lib\site-packages\bokeh\io\webdriver.py", line 118, in get
    self.current = self.create()

  File "C:\ProgramData\Anaconda3\lib\site-packages\bokeh\io\webdriver.py", line 122, in create
    driver = self._create(kind)

  File "C:\ProgramData\Anaconda3\lib\site-packages\bokeh\io\webdriver.py", line 140, in _create
    raise RuntimeError("Neither firefox and geckodriver nor a variant of chromium browser and " \

RuntimeError: Neither firefox and geckodriver nor a variant of chromium browser and chromedriver are available on system PATH. You can install the former with 'conda install -c conda-forge firefox geckodriver'.

Chrome отлично работает на моем компьютере. Я использую его сейчас. Я не уверен, почему боке для этого нужно использовать браузер, потому что я просто создаю файл png, но есть ли способ исправить это без установки firefox? Я бы предпочел продолжать использовать chrome.

1 Ответ

0 голосов
/ 27 мая 2020

Я не уверен, почему боке нужно использовать для этого браузер, потому что я просто создаю файл png

Это потому, что для создания этого файла PNG требуется HTML документ, созданный с помощью Bokeh, необходимо отрендерить. Раньше Bokeh использовал для этого Phantom JS, но этот проект теперь устарел и не поддерживается.

есть ли способ исправить это без установки firefox?

Как говорится в сообщении об ошибке, если вы хотите использовать браузер Chrome (например, Google Chrome), вы должны иметь chromedriver в вашем PATH. Если вы используете conda, вы можете попробовать установить его через conda install -c conda-forge python-chromedriver-binary в той же среде, что и для Bokeh.

...