Skip to main content

Command line script to download packs and singles from Headspace.

Project description

headspace-cli

PyPI version

Command line script to download headspace packs, singles or everyday meditation.

demo

👶 Dependencies

🛠️ Installation

pip install --upgrade pyheadspace
  • If installing using pip install --user, you must add the user-level bin directory to your PATH environment variable in order to use pyheadspace. If you are using a Unix derivative (FreeBSD, GNU / Linux, OS X), you can achieve this by using export PATH="$HOME/.local/bin:$PATH" command.

OR install with pipx

pipx install pyheadspace

This tool is only meant for personal use. Do not use this for piracy!

⚙️ Setup

Run and enter login credentials.

headspace login

If you use other form of authentication like google(do not have username and password), you could follow these steps

🚀 Usage

Download all packs at once

# Download all packs with each session of duration 15 minutes
headspace pack --all --duration 15

# Download all packs with session duration of 10 & 20 minutes
headspace pack --all --duration 10 --duration 15

Exclude specific packs from downloading:

To exclude specific packs from downloading use --exclude option.
It expects location of text file for links of packs to exclude downloading. Every link should be on separate line.

links.txt:

https://my.headspace.com/modes/meditate/content/154
https://my.headspace.com/modes/meditate/content/150

command

headspace packs --all --exclude links.txt

This would download all packs except the ones in links.txt file

Downloading specific pack

headspace pack <PACK_URL> [Options]

BASIC USAGE

# Download with all session of duration 15 minutes
headspace pack https://my.headspace.com/modes/meditate/content/151 --duration 15 

# Download sessions of multiple duration
headspace pack https://my.headspace.com/modes/meditate/content/151 -d 20 -d 15   

Options:

--id INTEGER         ID of video.
-d, --duration TEXT  Duration or list of duration
--no_meditation      Only download meditation session without techniques
                    videos.
--no_techniques      Only download techniques and not meditation sessions.
--out TEXT           Download directory
--all                Downloads all headspace packs.
-e, --exclude TEXT   Use with `--all` flag. Location of text file with links
                    of packs to exclude downloading. Every link should be
                    on separate line.
--help               Show this message and exit.

Download single session

headspace download <SESSION_URL> [options]

BASIC USAGE

$ headspace download https://my.headspace.com/player/204?authorId=1&contentId=151&contentType=COURSE&mode=meditate&trackingName=Course&startIndex=1 --duration 15

Options:

--out TEXT           Download directory.
--id INTEGER         ID of the video. Not required if URL is provided.
-d, --duration       Duration or list of duration
--help               Show this message and exit.

Download everyday meditations

headspace everyday [OPTIONS]

BASIC USAGE

# Downloads today's meditation
headspace everyday

# Download everyday meditation of specific time period.
# DATE FORMAT: yyyy-mm-dd
headspace everyday --from 2021-03-01 --to 2021-03-20

Options

--from TEXT          Start download from specific date. DATE-FORMAT=>yyyy-
                    mm-dd
--to TEXT            Download till a specific date. DATE-FORMAT=>yyyy-mm-dd
-d, --duration TEXT  Duration or list of duration
--out TEXT           Download directory
--help               Show this message and exit.

Changing Language Preference

By default the language is set to english. You could change to other languages supported by headspace. Other Languages:

  • de-DE
  • es-ES
  • fr-FR
  • pt-BR

To change the language modify the environment variable HEADSPACE_LANG and set the value to the langauge code.

  • For fish/bash shell export HEADSPACE_LANG="fr-FR"
  • Powershell $env:DESIRED_LANGUAGE="fr-FR"

If you encounter any issue or bug, open a new issue on github

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyheadspace-3.1.5.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyheadspace-3.1.5-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file pyheadspace-3.1.5.tar.gz.

File metadata

  • Download URL: pyheadspace-3.1.5.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.17.5-arch1-1

File hashes

Hashes for pyheadspace-3.1.5.tar.gz
Algorithm Hash digest
SHA256 02a4f37479453b6b66280cf1a6c9b9093fb498ca2d6d927b495136c989208ef7
MD5 bfbd6692c43568dc0cd5223e45d8a15e
BLAKE2b-256 9d08362e9fd88084ce214683e42713d0fbb2abc7ba5aac406569b1c7a5525a03

See more details on using hashes here.

File details

Details for the file pyheadspace-3.1.5-py3-none-any.whl.

File metadata

  • Download URL: pyheadspace-3.1.5-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.17.5-arch1-1

File hashes

Hashes for pyheadspace-3.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 21e500bc5094fe4706987a5503fcae38b627a96ccacb215f40e2015194d8378d
MD5 5aad4c39ecb381ba9db01d8d7a5c9e40
BLAKE2b-256 7bd9142ec9f1eecb51f273cbfa2692bd5a197b162726aa3b7aa2eca5d4840588

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page