Извлечь все данные ячейки из текущей записной книжки Jupyter

В Jupyter есть два варианта экспорта записных книжек в другие форматы, используя nbconvert в командной строке или в виде библиотеки. Оба требуют, чтобы вы передали исходную записную книжку в качестве ввода (в качестве имени файла или данных JSON).

То, что я хотел бы сделать, - это, по сути, автоматическое создание автономных отчетов, т.е. использовать библиотеку nbconvert в записной книжке, чтобы экспортировать эту же записную книжку в HTML/PDF при исполнении. Я предусматриваю код экспорта в последней ячейке документа с инструкциями игнорировать эту последнюю ячейку при экспорте.

Моя проблема в получении данных. В блокноте я могу получить доступ к ячейкам кода через In[1], Out[2] и т. д., но AFAIK нет такой функциональности для ячеек уценки. Там также нет (официальный) метод, чтобы захватить имя ноутбука (нет __file__ атрибут), чтобы передать информацию таким образом.

Есть много примеров, чтобы получить все данные о ячейках из других ноутбуков - но есть ли способ получить доступ ко всем данным о ячейках из текущей записной книжки?

1 ответ

Вы можете сделать это с именем ноутбука и nbconvert, как вы и предполагаете. Для выполнения некоторых вещей на стороне клиента могут потребоваться расширения, одно из которых, я могу себе представить, - это расширение сервера для выполнения преобразования, и немного JS, который вы пишете в последней ячейке кода, например, для рендеринга кнопки и отправки блокнота обратно в преобразование. расширение сервера. Скрывать определенные ячейки (скажем, ячейку Js) вы можете в расширении конвертации или с помощью метаданных ячейки и шаблонов nbconvert. Учитывая гибкость архитектуры, есть немало способов сделать это

Другие вопросы по тегам