Name | yt-queue JSON |
Version |
0.11.13
JSON |
| download |
home_page | None |
Summary | CLI to keep track of videos in Youtube playlists |
upload_time | 2025-07-12 16:41:20 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | None |
keywords |
yt-dlp
youtube
|
VCS |
 |
bugtrack_url |
|
requirements |
yt-dlp
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# yt-queue
CLI to keep track of videos in Youtube playlists
## cli
See `yt-queue -h` and `yt-queue <subcommand> -h` for details.
Examples:
```sh
# create a new file
yt-queue create example.ytq.json "https://www.youtube.com/playlist?list=PL0pg4HdU1lNMtRzycn3wbKyfQO5vQZja9"
# refresh a file, only if it wasnt recently updated
yt-queue refresh example.ytq.json --only-if-older=1day
# get the "new" items
yt-queue filter --no-status example.ytq.json
# read the values of a video from the file
yt-queue read-field example.ytq.json "C0DPdy98e4c" url
yt-queue read-field example.ytq.json "C0DPdy98e4c" title
# set the status
yt-queue set-status example.ytq.json "C0DPdy98e4c" some-text-status
yt-queue filter --status=some-text-status example.ytq.json
# more filter options
yt-queue filter --title "TEST VIDEO" example.ytq.json
yt-queue filter --min-duration 3 example.ytq.json
yt-queue filter --max-duration 20 example.ytq.json
```
### output
Most cli subcommands' output (`stdout`) is parsable. `stderr` is used for logging:
- `filter` returns the matching video ids, 1 per line
- `read-field` returns the value of the field for the given video id
Other subcommands output should not be parsed - they contain either progress or verbose logging (including
from `yt-dlp`)
## development
setup (or recreate) environment with `source dev/init.sh`
or manually:
```shell
python3 -m venv .env
source .env/bin/activate
pip install --editable .
pip install '.[dev]'
```
other dependencies: `shellcheck`
tests: `./check.sh`
test the built packages: `./dist-check.sh dist/...`
Raw data
{
"_id": null,
"home_page": null,
"name": "yt-queue",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "yt-dlp, YouTube",
"author": null,
"author_email": "Hendri Pretorius <pretorh@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/32/bd/cbca0c5a05b2424b6645a3802fc270630d49b9211fb11284c16ffd550653/yt_queue-0.11.13.tar.gz",
"platform": null,
"description": "# yt-queue\nCLI to keep track of videos in Youtube playlists\n\n## cli\n\nSee `yt-queue -h` and `yt-queue <subcommand> -h` for details.\n\nExamples:\n\n```sh\n# create a new file\nyt-queue create example.ytq.json \"https://www.youtube.com/playlist?list=PL0pg4HdU1lNMtRzycn3wbKyfQO5vQZja9\"\n\n# refresh a file, only if it wasnt recently updated\nyt-queue refresh example.ytq.json --only-if-older=1day\n\n# get the \"new\" items\nyt-queue filter --no-status example.ytq.json\n\n# read the values of a video from the file\nyt-queue read-field example.ytq.json \"C0DPdy98e4c\" url\nyt-queue read-field example.ytq.json \"C0DPdy98e4c\" title\n\n# set the status\nyt-queue set-status example.ytq.json \"C0DPdy98e4c\" some-text-status\nyt-queue filter --status=some-text-status example.ytq.json\n\n# more filter options\nyt-queue filter --title \"TEST VIDEO\" example.ytq.json\nyt-queue filter --min-duration 3 example.ytq.json\nyt-queue filter --max-duration 20 example.ytq.json\n```\n\n### output\n\nMost cli subcommands' output (`stdout`) is parsable. `stderr` is used for logging:\n\n- `filter` returns the matching video ids, 1 per line\n- `read-field` returns the value of the field for the given video id\n\nOther subcommands output should not be parsed - they contain either progress or verbose logging (including\nfrom `yt-dlp`)\n\n## development\n\nsetup (or recreate) environment with `source dev/init.sh`\n\nor manually:\n\n```shell\npython3 -m venv .env\nsource .env/bin/activate\npip install --editable .\npip install '.[dev]'\n```\n\nother dependencies: `shellcheck`\n\ntests: `./check.sh`\n\ntest the built packages: `./dist-check.sh dist/...`\n",
"bugtrack_url": null,
"license": null,
"summary": "CLI to keep track of videos in Youtube playlists",
"version": "0.11.13",
"project_urls": {
"Bug Tracker": "https://github.com/pretorh/yt-queue/issues",
"Homepage": "https://github.com/pretorh/yt-queue"
},
"split_keywords": [
"yt-dlp",
" youtube"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "5ee7aefe9b4d1162fd0be1cb8d70df873dc98188dae13744600f55442f9e351d",
"md5": "e1adb5ef6f4026d3c485810b86621d62",
"sha256": "66856aad7aebd15cc03c9f25e4d8b5892ca761f2615755ba2e8ba57dfc14fe16"
},
"downloads": -1,
"filename": "yt_queue-0.11.13-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e1adb5ef6f4026d3c485810b86621d62",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 15982,
"upload_time": "2025-07-12T16:41:19",
"upload_time_iso_8601": "2025-07-12T16:41:19.269606Z",
"url": "https://files.pythonhosted.org/packages/5e/e7/aefe9b4d1162fd0be1cb8d70df873dc98188dae13744600f55442f9e351d/yt_queue-0.11.13-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "32bdcbca0c5a05b2424b6645a3802fc270630d49b9211fb11284c16ffd550653",
"md5": "15de051c4569fcd97ed210ffb54d6340",
"sha256": "c3e8009de14c43442ab0dab33e80d3c7a51c571f82a3139bc271441bc20fb5de"
},
"downloads": -1,
"filename": "yt_queue-0.11.13.tar.gz",
"has_sig": false,
"md5_digest": "15de051c4569fcd97ed210ffb54d6340",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 11466,
"upload_time": "2025-07-12T16:41:20",
"upload_time_iso_8601": "2025-07-12T16:41:20.549786Z",
"url": "https://files.pythonhosted.org/packages/32/bd/cbca0c5a05b2424b6645a3802fc270630d49b9211fb11284c16ffd550653/yt_queue-0.11.13.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-12 16:41:20",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "pretorh",
"github_project": "yt-queue",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "yt-dlp",
"specs": [
[
"==",
"2025.06.30"
]
]
}
],
"lcname": "yt-queue"
}