Skip to main content
https://travis-ci.org/kynan/nbstripout.svg?branch=master https://img.shields.io/pypi/dm/nbstripout.svg https://img.shields.io/pypi/v/nbstripout.svg https://img.shields.io/badge/license-MIT-blue.svg https://img.shields.io/pypi/pyversions/nbstripout.svg

nbstripout: strip output from Jupyter and IPython notebooks

Opens a notebook, strips its output, and writes the outputless version to the original file.

Useful mainly as a git filter or pre-commit hook for users who don’t want to track output in VCS.

This does mostly the same thing as the Clear All Output command in the notebook UI.

Based on https://gist.github.com/minrk/6176788.

Screencast

This screencast demonstrates the use and working principles behind the nbstripout utility and how to use it as a Git filter:

http://i.imgur.com/7oQHuJ5.png

Installation

You can download and install the latest version of nbstripout from PyPI, the Python package index, as follows:

pip install --upgrade nbstripout

When using the Anaconda Python distribution, install nbstripout via the conda package manager from conda-forge:

conda install -c conda-forge nbstripout

Usage

Strip output from IPython / Jupyter notebook (modifies the files in-place):

nbstripout FILE.ipynb [FILE2.ipynb ...]

Force processing of non .ipynb files:

nbstripout -f FILE.ipynb.bak

Use as part of a shell pipeline:

FILE.ipynb | nbstripout > OUT.ipynb

Set up the git filter and attributes as described in the manual installation instructions below:

nbstripout --install

Set up the git filter using .gitattributes

nbstripout --install --attributes .gitattributes

Remove the git filter and attributes:

nbstripout --uninstall

Remove the git filter and attributes from .gitattributes:

nbstripout --uninstall --attributes .gitattributes

Check if nbstripout is installed in the current repository (exits with code 0 if installed, 1 otherwise):

nbstripout --is-installed

Print status of nbstripout installation in the current repository and configuration summary of filter and attributes if installed (exits with code 0 if installed, 1 otherwise):

nbstripout --status

Print the version:

nbstripout --version

Show this help page:

nbstripout --help

Keeping some output

To mark special cells so that the output is not striped, set the "keep_output": true metadata on the cell. To do this, select the “Edit Metadata” Cell Toolbar, and then use the “Edit Metadata” button on the desired cell to enter something like:

{
  "keep_output": true,
}

Another use-case is to preserve initialization cells that might load customized CSS etc. critical for the display of the notebook. To support this, we also keep output for cells with:

{
  "init_cell": true,
}

This is the same metadata used by the init_cell nbextension.

Manual filter installation

Set up a git filter using nbstripout as follows:

git config filter.nbstripout.clean '/path/to/nbstripout'
git config filter.nbstripout.smudge cat
git config filter.nbstripout.required true

Create a file .gitattributes or .git/info/attributes with:

*.ipynb filter=nbstripout

Mercurial usage

Mercurial does not have the equivalent of smudge filters. One can use an encode/decode hook but this has some issues. An alternative solution is to provide a set of commands that first run nbstripout, then perform these operations. This is the approach of the mmf-setup package.

Release files for nbstripout 0.2.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nbstripout 0.2.9
File Size Uploaded
nbstripout-0.2.9.tar.gz 11.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nbstripout 0.2.9
File Interpreter ABI Platform
nbstripout-0.2.9-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 20.5 kB

Release files / nbstripout-0.2.9.tar.gz

Download URL nbstripout-0.2.9.tar.gz
Size 11.6 kB
Tags Source
SHA-256 checksum
How to use checksums
13572992e60e76103de19d505c6198f61cc3f568c9d823cec895abb3e6b3ecb7
BLAKE2b-256 checksum
How to use checksums
4f747983fc46c9b06eec04a1c02a9937068517d417f277b4221403874f47ef2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / nbstripout-0.2.9-py2.py3-none-any.whl

Download URL nbstripout-0.2.9-py2.py3-none-any.whl
Size 8.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
d3ce7889d3de82b88e6c3ac2f8f9460bc82c925c0f513023aa6f638273022fa9
BLAKE2b-256 checksum
How to use checksums
55e1a185c837be75b567c3781804fe984aba159c306d678d9384f92e476aab5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

0.9.1

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.10

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

This release

0.2.9 This release

2 release files

0.2.8

1 release file

0.2.7

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page