A Python tool for parameterizing, executing, and analyzing Jupyter Notebooks at scale.
Papermill is a Python tool that allows users to parameterize, execute, and analyze Jupyter Notebooks programmatically. It solves the problem of manually running notebooks with different inputs by enabling automation and integration into larger data workflows.
Data scientists, data engineers, and analysts who use Jupyter Notebooks for reproducible research, reporting, or pipeline tasks and need to automate execution with varying parameters.
Developers choose Papermill for its straightforward approach to notebook automation, support for multiple cloud storage backends, and its ability to turn notebooks into reusable, parameterized components within scalable data pipelines.
📚 Parameterize, execute, and analyze notebooks
Uses Jupyter cell tags to designate a 'parameters' cell, automatically injecting and tracking runtime inputs in an 'injected-parameters' cell for easy reuse and reproducibility.
Supports parameters via CLI flags, YAML files, raw strings, and base64-encoded YAML, accommodating various workflow needs from simple commands to complex structured data.
Integrates with AWS S3, Azure Blob/DataLake, Google Cloud Storage, and local/HTTP paths, enabling scalable data pipeline execution across diverse environments.
Offers both Python API and CLI interfaces, allowing seamless integration into automated workflows, schedulers, or custom Python applications.
Tightly coupled to Jupyter Notebooks and kernels, which can be resource-intensive, slow to start, and less suitable for production deployments preferring lightweight scripts.
Full cloud storage support requires installing optional bundles like 'all', adding setup complexity and potential version conflicts in constrained environments.
Focuses on parameterization and execution but lacks built-in features for complex error handling, monitoring, or dependency management, often needing external tools like Airflow.
Virtual whiteboard for sketching hand-drawn like diagrams
Tesseract Open Source OCR Engine (main repository)
Universal markup converter
:black_heart: Create and share beautiful images of your source code
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.