Notebook‑Kompressor: Verkleinern Sie ein Jupyter‑Notebook, damit Git, E‑Mail und Reviewer nicht mehr meckern
Dieser Notebook‑Kompressor schrumpft aufgeblähte .ipynb‑Dateien im Browser. Legen Sie die Datei ab, wählen Sie die Aggressivität und laden Sie ein kleineres Notebook für Git, E‑Mail oder Ihren Code‑Reviewer herunter. Standardmäßig entfernt er schwere Ausgaben (vor allem Base64‑Bildplots), löscht `In [n]`‑Ausführungszähler, wirft flüchtige Widget‑Metadaten weg, kürzt nachgestellte Leerzeichen und minifiziert das JSON – Schritte, die die Dateigröße oft um eine Größenordnung senken, ohne eine Zeile Ihres eigentlichen Codes oder Markdowns anzufassen.
Warum zählt das? Notebooks wachsen aus banalen Gründen. Ein einzelner matplotlib‑Plot als Base64‑PNG kann 1–2 MB hinzufügen. Bokeh, Plotly und ipywidgets speichern Zustand in `metadata.widgets`, oft größer als die Zellen selbst. Git‑Diffs werden unlesbar. Pull Requests blähen auf. E‑Mail‑Anhänge stoßen an Grenzen. Der Kompressor entfernt all das, ohne die Bedeutung des Notebooks zu ändern.
Verglichen mit `jupyter nbconvert --ClearOutputPreprocessor.enabled=True` oder nbstripout gewinnt diese Seite, wenn Sie kein Tooling aufsetzen wollen, die Datei auf einem Chromebook liegt oder Sie vor dem Teilen schnell aufräumen möchten. Sie geht weiter als nbstripout: flüchtiger Widget‑Status fällt weg, riesige Bildausgaben werden durch Text‑Platzhalter ersetzt, Whitespace wird gekürzt und JSON minifiziert. nbstripout bleibt richtig für automatisierte pre‑commit‑Hooks; dieses Tool passt zu einem einzelnen Notebook auf fremdem Rechner.
Angst vor Datenverlust? Die Defaults sind sicher: Ausgaben verschwinden, aber jede Quellzelle bleibt exakt, jedes Markdown bleibt an Ort und Stelle, Kernel‑ und Sprach‑Metadaten bleiben gültig. Lockern oder verschärfen Sie Schalter je nach Bedarf – Bildausgaben behalten und Whitespace kürzen, oder alles streifen für die kleinstmögliche Datei.

