Skip to main content

Keep-Exporter

PyPi PyPi PyPi

A command line utility to export Google Keep notes to markdown files with metadata stored as a frontmatter header.

Features

  • Exports all note types (List and Note)
  • Exports all media attached to notes
    • Audio, drawings, attached images, etc
  • Sync Keep to directory (keeps directory looking exactly the same as Google Keep)
  • Customizable date format
    • Easy ISO8601 via --iso8601
  • Password or token based authentication
    • Store your login token to config file with keep_export savetoken
  • Note metadata header in yaml frontmatter format

Usage

If you do not supply a username or password before running it, you will be prompted to input them.

Usage: keep_export [OPTIONS] COMMAND [ARGS]...

Options:
  --config FILE                   Read configuration from FILE.  [default: /home/nate/.config/keep-exporter]
  -u, --user TEXT                 Google account email (prompt if empty)  [env var: GKEEP_USER;required]
  -p, --password TEXT             Google account password (prompt if empty). Either this or token is required.  [env var: GKEEP_PASSWORD]
  -t, --token TEXT                Google account token from prior run. Either this or password is required.
  -d, --directory DIRECTORY       Output directory for exported notes  [default: ./gkeep-export]
  --header / --no-header          Choose to include or exclude the frontmatter header  [default: header]
  --delete-local / --no-delete-local
                                  Choose to delete or leave as-is any notes that exist locally but not in Google Keep  [default: no-delete-local]
  --rename-local / --no-rename-local
                                  Choose to rename or leave as-is any notes that change titles in Google Keep  [default: no-rename-local]
  --date-format TEXT              Date format to prefix the note filenames. Reflects the created date of the note. uses strftime()  [default: %Y-%m-%d]
  --iso8601                       Format dates in ISO8601 format.
  --skip-existing-media / --no-skip-existing-media
                                  Skip existing media if it appears unchanged from the local copy.  [default: skip-existing-media]
  -h, --help                      Show this message and exit.

Commands:
  savetoken  Saves the master token to your configuration file.

Notes

If you are using 2 Factor Authentication (2FA) for your google account, you will need to generate an app password for keep. You can do so on your Google account management page.

Installation

There are many ways to install this, easiest is through pip or the releases page.

Pip

The easiest way is with pip from PyPi

pip3 install keep-exporter

Download the Wheel

Download the wheel from the releases page and then install with pip:

pip install keep_exporter*.whl

Building

Download or git clone

  1. Clone the repository https://github.com/ndbeals/keep-exporter or download from the releases page and extract the source code.
  2. cd into the extracted directory
  3. With poetry installed, run poetry install in the project root directory
  4. poetry build will build the installable wheel
  5. cd dist then run pip3 install <keep-exporter-file.whl>

Troubleshooting

Some users have had issues with the requests library detailed in this issue when using pipx. The solution is to change the requests library version.

pipx install keep-exporter 
pipx inject keep-exporter requests===2.23.0

Metadata

Release files for keep-exporter 2.0.1

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

Source distribution (sdist)

Source distribution for keep-exporter 2.0.1
File Size Uploaded Provenance
keep_exporter-2.0.1.tar.gz 12.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for keep-exporter 2.0.1
File Interpreter ABI Platform
keep_exporter-2.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 26.4 kB

Release files / keep_exporter-2.0.1.tar.gz

Download URL keep_exporter-2.0.1.tar.gz
Size 12.7 kB
Tags Source
SHA-256 checksum
How to use checksums
b2ff2ac71111931d2ba7ba9b95306b9cadcb05c3e3ad0b5a3fe21eb18c5ace16
BLAKE2b-256 checksum
How to use checksums
16be1c2cc5f3cbf166c762309c86b6653e79fd4bfd35c676a27548a491e366a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.6 CPython/3.8.10 Linux/5.10.16.3-microsoft-standard-WSL2

Release files / keep_exporter-2.0.1-py3-none-any.whl

Download URL keep_exporter-2.0.1-py3-none-any.whl
Size 13.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
77057677b506d2b3b9cda2fb8b3fe3bf928f8ea9042004a39199fbd9abed357d
BLAKE2b-256 checksum
How to use checksums
81f9717bca62d10165c2cff771bebada7e790c5334bfa448d1f7ee4b6c27994d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.6 CPython/3.8.10 Linux/5.10.16.3-microsoft-standard-WSL2

Security for keep-exporter 2.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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