[PYTHON] Konvertieren Sie .ipynb in .html (mit BatchFile)

Fazit

demo

Hintergrund

――Es ist schwierig, einen lokalen Server zu starten und jedes Mal ein Notizbuch zu öffnen, um den Inhalt einer großen Menge von .ipynb zu überprüfen. Wenn Sie in einem anderen Verzeichnis für ein anderes Unternehmen arbeiten, müssen Sie außerdem eine Reihe lokaler Server einrichten, die nicht das Unternehmen sind.

Bestehende Methode

jupyter nbconvert --to html hoge.ipynb
  • Methode 2: Offiziell: Anpassen von nbconvert --htmlized using template ("simplepython.tpl" im folgenden Beispiel). Mit dieser Methode kann das Inhaltsverzeichnis in nbextension wie toc2 als HTML eingefügt werden.
jupyter nbconvert --to python 'example.ipynb' --stdout --template=simplepython.tpl

--Methode 3: Öffnen und speichern Sie noebook auf LocalServer スクリーンショット 2020-02-11 12.53.25.png

Probleme / Probleme, die nicht gelöst werden können

――Es ist schmerzhaft, wenn Sie viel .ipynb sehen müssen

  • Vergessen Sie den Pfad in template.tpl
  • Das Verschieben des Verzeichnisses ist problematisch
  • Sie müssen verschiedene Pakete (jupyter, nbconvert, nbextensions, toc2.tpl usw.) in die Python-Umgebung einfügen. (Ich möchte, dass die Umgebung einfach ist!)
  • ↑ Ich kann mich nicht an die Existenz des Pakets erinnern, da ich eine virtuelle Umgebung erstellt und von Zeit zu Zeit ersetzt habe.

Ansatz

Implementieren Sie eine GUI-basierte Verarbeitung. (Kombinieren vorhandener Methodenbefehle in einer ausführbaren Datei.)

  • Das verwendete Paket --pyinstaller: 1 Erstellen Sie eine ausführbare Datei --jupyter: Verwenden Sie Funktionen wie nbconvert, um in Text-> Notizbuchformat-> HTML zu konvertieren --jinja2: Wird beim Laden einer template.tpl verwendet
  • Verschiedene Vorlagen, die von jinja2 beim Starten von jupyter notebook geladen werden, z. B. toc2.tpl, full.tpl ...:

――Wenn Sie Lust auf den spezifischen Inhalt haben, werde ich ihn hinzufügen - git link

Wirkung / Schlussfolgerung

  • Bisher funktioniert es einwandfrei und es ist praktisch, in 5 Sekunden in HTML konvertiert zu werden.
  • Die verbleibenden Herausforderungen
  • Die Dateigröße ist groß (ca. 50 MB) und übt Druck auf die Festplatte aus.
  • Die Verarbeitungszeit ist lang. Wenn möglich, möchte ich, dass Sie die HTML-Konvertierung in etwa 0,5 Sekunden abschließen.

Bonus (wo ich stecken geblieben bin)

  • Es fiel mir schwer, die Vorlagen in die Batchdatei einzubetten.
    Weil pyinstaller die folgende Vorlagendatei nicht erkannt hat. Es ist eine wichtige Datei für jinja2, um von Text in HTML zu konvertieren.

    • toc2.tpl
    • full.tpl
    • nbextensions.tpl
    • mathjax.tpl
    • celltags.tpl
  • Als Lösung für ↑ habe ich .tpl fest codiert und eine Datei zum Lesen als Zeichenfolge erstellt. (Data_tpl.py) Es scheint, dass pyinstaller .pyfile ohne Erlaubnis erkennt. ――Nachdem können Sie, wenn Sie die von einem String gelesene Vorlage mit jinja2.dictLoader konvertieren, jinja2 ({% -extends'hogehoge.html '%}) ohne Erlaubnis erben.

Recommended Posts

Konvertieren Sie .ipynb in .html (mit BatchFile)
Konvertieren Sie 202003 bis 2020-03 mit Pandas
Konvertieren Sie HTML in eine Textdatei
Standardisieren Sie HTML, um mit Django gemietet zu werden
Konvertieren Sie ein ggplot-basiertes Diagramm in HTML
Konvertieren Sie die Liste mit Python in DataFrame
Konvertieren Sie Sätze mit gensim in Vektoren
Konvertieren Sie PDF in Image mit ImageMagick
Google-Logo herunterladen → Text mit OCR → In HTML anzeigen
Konvertieren Sie Memos sofort mit Python 2to3
HTML-Mail mit Bild zum Senden mit Python
Konvertieren Sie mit pdfplumber von PDF in CSV
Konvertieren Sie Zeichenketten mit RoBERTa in Merkmalsmengen
Konvertieren Sie Excel-Daten mit Python in JSON
Konvertiere Hiragana mit Python (Beta) in Romaji
Konvertieren Sie PDF-Dateien mit GIMP in PNG-Dateien
Konvertieren Sie ein Array (struct) mit golang in json
Konvertieren Sie chinesische Zahlen mit Python in arabische Zahlen
In Python von Markdown in HTML konvertieren
Beispiel für die Wavelet-Konvertierung von Bildern in Python
Zum HSV konvertieren
Ich habe ein Tool erstellt, um Jupyter py mit VS Code in ipynb zu konvertieren
DICOM zu PNG Konvertierung mit aufsteigend und absteigend
Konvertieren Sie Daten mit Form (Anzahl der Daten, 1) in (Anzahl der Daten,) mit numpy.
Konvertieren Sie PDF in Bilder (JPEG / PNG) mit Python
Konvertieren Sie PDFs mit Python in Massenbilder
Konvertieren Sie mp4 in mp3 mit ffmpeg (eingebettete Thumbnail-Version)
Konvertieren Sie die SVG-Datei mit Python in png / ico
Konvertieren Sie Windows-Epochenwerte mit Python in das Datum
Konvertieren Sie Jupyter-Notizbücher ganz einfach in Blogs mit Fastpages
Konvertieren von (32,32,3) in einen 4-dimensionalen Tensor (1,32,32,1) mit ndarray-Typ
Konvertieren Sie die Zeichenfolge mit Python in ein zeichenweises Listenformat
Konvertieren Sie die JPYTER-Notebook-IPynb-Datei in die ausführbare Python-Py-Datei
Ich möchte ein Bild mit Lollipop in WebP konvertieren
So konvertieren / wiederherstellen Sie einen String mit [] in Python
0 Konvertieren Sie nicht ausgefülltes Datum in Datums- / Uhrzeittyp mit regulärem Ausdruck
Konvertiere Kanji in Kana
Konvertieren Sie eine Textdatei mit hexadezimalen Werten in eine Binärdatei
So konvertieren Sie horizontal gehaltene Daten mit Pandas in vertikal gehaltene Daten
So konvertieren Sie ein Klassenobjekt mit SQLAlchemy in ein Wörterbuch
Jupyter in py umwandeln
Konvertiere keras-yolo3 in onnx
Konvertieren Sie das Bild in .zip mit Python in PDF
So konvertieren Sie eine JSON-Datei mit Python Pandas in eine CSV-Datei
Dikt in Array konvertieren
PyInstaller-Memorandum Konvertieren Sie Python [.py] in [.exe] mit 2 Zeilen
Konvertieren Sie json in Excel
Konvertieren Sie numerische Variablen mit Pandas in kategoriale Variablen, indem Sie einen Schwellenwert festlegen
Konvertieren Wählen Sie die von Postgre erhaltene Abfrage mit Gehe zu JSON
So konvertieren Sie mit Python [Anwendung] von einem Array in ein Wörterbuch
Konvertieren Sie den Farbraum von RGB nach CIELAB mit PIL (Pillow)
Doppelklicken Sie in Windows + Anaconda auf ipynb, um es in jupyter-notebook zu öffnen
Konvertieren Sie Bilder mit PIL (Python Imaging Library) in Sepia.
Konvertieren Sie verstümmelte gescannte Bilder mit Pillow und PyPDF in PDF
Konvertieren Sie Videos mit ffmpeg + python + opencv in Schwarzweiß
Versuchen Sie, den Boden durch Rekursion herauszufordern
Stellen Sie mit Python eine Verbindung zu BigQuery her
Konvertieren Sie eine hexadezimale Zeichenfolge in eine Binärzeichenfolge
[Python] Datum in Zeichenfolge konvertieren