Ich suche nach einer Möglichkeit, Codezellen (Eingaben) beim Exportieren meiner .iipynb-Datei in einen HTML-Code auszublenden. Ich möchte nicht, dass die Codezellen überhaupt sichtbar sind (keine Schaltfläche, mit der sie ein- oder ausgeschaltet werden). Die Ausgabe richtet sich an Personen, die keine Ahnung haben, was eine Programmiersprache ist. Ich habe viele Dinge ausprobiert, die ich im Internet gefunden habe, aber nichts scheint zu funktionieren.

Vielen Dank

59
Ahmed Lahlou Mimi 18 Apr. 2018 im 22:18

6 Antworten

Beste Antwort

Ich fand schließlich Folgendes: https://pypi.org/project/hide_code/0.2.0/

Es ist eine Jupyter-Erweiterung und funktioniert wie ein Zauber. Ich verwende die Eingabeaufforderung, um das Notizbuch in ein HTML zu konvertieren, da die mit der Erweiterung gelieferten Schaltflächen für mich nicht funktionieren.

1
Ahmed Lahlou Mimi 19 Apr. 2018 im 08:49

In neueren Versionen von jupyter nbconvert können Sie die Option --no-input verwenden:

echo 'A Markdown cell with an equation $x=y+1$

```python
1 + 1
```
' | jupytext --to ipynb | jupyter nbconvert --stdin --execute --no-input --to html --output notebook.html

Wenn Sie jetzt nicht über die Option --no-input verfügen, verwenden Sie --TemplateExporter.exclude_input=True, das ab Version 5.2.1 verfügbar ist.

8
Marc Wouts 21 Juni 2019 im 12:29

Ab sofort (nbconvert Version 5.6.0) scheint die einfachste Lösung darin zu bestehen, das Argument --no-input anzugeben, wenn die CLI-Schnittstelle von nbconvert verwendet wird:

jupyter nbconvert yourNotebook.ipynb --no-input

Es funktioniert wie Magie Weitere Informationen hier

12
Alexey Sigida 23 Okt. 2019 im 14:27

Ich habe nbinteract (https://www.nbinteract.com/) verwendet, um die Seite und #HIDDEN ( https://gitter.im/nbinteract/Lobby/) oben in der Zelle. Es ist nicht dokumentiert und muss sich ändern, wird jedoch aus Gründen der Abwärtskompatibilität beibehalten.

0
fvanden 13 Sept. 2018 im 12:10

Für andere, die eine bestimmte Codezelle ausblenden möchten, besteht eine Lösung darin, ein Befehlszeilentool im nbdev -Paket (entwickelt von fastai) zu verwenden, um Jupiter-Notizbücher nach Markdown zu exportieren. Der Befehl lautet nbdev_nb2md.

Wenn Sie dies tun und #hide oben in einer Notebook-Zelle platzieren, wird es nicht nach Markdown exportiert. Es wird ignoriert.

Weitere Informationen finden Sie in diesem Blogbeitrag: https://www.fast.ai/2020 / 01/20 / nb2md /

0
Tom Roth 7 Feb. 2020 im 03:13

Sie können dies mit einer NBConvert-Vorlage tun. Die meisten Beispiele beziehen sich auf Latex / PDF und funktionieren nicht mit HTML, das andere Vorlagen verwendet (und aus irgendeinem Grund eine andere Erweiterung und eine etwas andere Dateisyntax).

Schreiben Sie Folgendes in eine Vorlagendatei mit dem Namen hidecode.tpl:

{%- extends 'full.tpl' -%}

{% block input_group %}
    {%- if cell.metadata.get('nbconvert', {}).get('show_code', False) -%}
        ((( super() )))
    {%- endif -%}
{% endblock input_group %}

Konvertieren Sie dann Ihr Notizbuch in HTML mit:

jupyter nbconvert --to html --template hidecode YourNotebook.ipynb

10
Autumn 22 März 2019 im 18:34