altair_saver останавливается в течение l oop: WebDriverException: сообщение: неизвестная ошибка: результат вызова функции должен быть словарем - PullRequest
1 голос
/ 12 февраля 2020

Решение до этот вопрос сработало, однако l oop прерывается после 3 итераций и возвращает следующее сообщение, которое я пытаюсь интерпретировать.

---------------------------------------------------------------------------
WebDriverException                        Traceback (most recent call last)
<ipython-input-26-c6224480ee8c> in <module>
     26     chart=(background + choro1_5).configure_view(stroke='white')
     27     filename = f"{name}.svg"
---> 28     save(chart, filename, method='selenium', webdriver=driver)
     29 #driver.quit()

~\Anaconda3\lib\site-packages\altair_saver\_core.py in save(chart, fp, fmt, mode, method, **kwargs)
     75     saver = Saver(spec, mode=mode, **kwargs)
     76 
---> 77     saver.save(fp=fp, fmt=fmt)
     78 
     79 

~\Anaconda3\lib\site-packages\altair_saver\savers\_saver.py in save(self, fp, fmt)
     86             raise ValueError(f"Got fmt={fmt}; expected one of {self.valid_formats}")
     87 
---> 88         content = self.mimebundle(fmt).popitem()[1]
     89         if isinstance(content, dict):
     90             with maybe_open(fp, "w") as f:

~\Anaconda3\lib\site-packages\altair_saver\savers\_saver.py in mimebundle(self, fmts)
     66                     f"invalid fmt={fmt!r}; must be one of {self.valid_formats}."
     67                 )
---> 68             bundle.update(self._mimebundle(fmt))
     69         return bundle
     70 

~\Anaconda3\lib\site-packages\altair_saver\savers\_selenium.py in _mimebundle(self, fmt)
    249 
    250     def _mimebundle(self, fmt: str) -> Mimebundle:
--> 251         out = self._extract(fmt)
    252         mimetype = fmt_to_mimetype(
    253             fmt,

~\Anaconda3\lib\site-packages\altair_saver\savers\_selenium.py in _extract(self, fmt)
    245                 )
    246         return driver.execute_async_script(
--> 247             EXTRACT_CODE, self._spec, self._mode, self._scale_factor, fmt
    248         )
    249 

~\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py in execute_async_script(self, script, *args)
    657         return self.execute(command, {
    658             'script': script,
--> 659             'args': converted_args})['value']
    660 
    661     @property

~\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py in execute(self, driver_command, params)
    319         response = self.command_executor.execute(driver_command, params)
    320         if response:
--> 321             self.error_handler.check_response(response)
    322             response['value'] = self._unwrap_value(
    323                 response.get('value', None))

~\Anaconda3\lib\site-packages\selenium\webdriver\remote\errorhandler.py in check_response(self, response)
    240                 alert_text = value['alert'].get('text')
    241             raise exception_class(message, screen, stacktrace, alert_text)
--> 242         raise exception_class(message, screen, stacktrace)
    243 
    244     def _value_or_default(self, obj, key, default):

WebDriverException: Message: unknown error: call function result must be a dictionary
  (Session info: chrome=79.0.3945.130)

1 Ответ

1 голос
/ 07 марта 2020

Запуск аналогичного процесса для перебора коллекции записей и печати диаграмм. Бил похожую ошибку в 3.2. Я считаю, что это исправлено в Altair 4.0.1

Удачи!

...