diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 156a901..0000000 Binary files a/.DS_Store and /dev/null differ diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..2533a7a --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,29 @@ +name: Test + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + test: + runs-on: ubuntu-latest + strategy: + matrix: + python-version: ["3.10", "3.11", "3.12"] + steps: + - uses: actions/checkout@v4 + + - uses: astral-sh/setup-uv@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install dependencies + run: uv sync --all-extras --locked + + - name: Lint + run: uv run ruff check . + + - name: Run tests + run: uv run python -m pytest tests/ -v diff --git a/LOGGING_IMPLEMENTATION_COMPLETE.md b/LOGGING_IMPLEMENTATION_COMPLETE.md deleted file mode 100644 index 7ce0e02..0000000 --- a/LOGGING_IMPLEMENTATION_COMPLETE.md +++ /dev/null @@ -1,187 +0,0 @@ -# Comprehensive Logging Implementation - Final Summary - -## Project: YouTube CLI -## Date: February 25, 2026 - -## Summary of Changes - -### 1. Logs Directory Structure -``` -/Users/user/Projects/youtube-cli/logs/ -├── app.log # Main application log file (auto-created) -└── .gitignore (logs/ already present) -``` - -### 2. Logging Configuration - -**Global Settings:** -- **Log Directory**: `~/.config/youtube_cli/logs/` -- **Log File**: `app.log` -- **Max Size**: 10MB -- **Backup Count**: 5 rotations -- **File Level**: DEBUG -- **Console Level**: INFO - -**Log Format:** -``` -YYYY-MM-DD HH:MM:SS | module.name | LEVEL | message -``` - -### 3. Files Modified - -| File | Logger Added | Console Print Replaced | -|------|-------------|----------------------| -| `youtube_cli/main.py` | ✅ | 30+ statements | -| `youtube_tui/app.py` | ✅ | N/A (no console.print) | -| `youtube_tui/services/download_manager.py` | ✅ | 3 statements | -| `youtube_tui/services/youtube.py` | ✅ | 4 statements | -| `youtube_tui/services/queue.py` | ✅ | 2 statements | -| `app.py` (REST API) | ✅ | N/A (no console.print) | - -### 4. Logging Implementation Pattern - -**Standard Import Block:** -```python -import logging -from logging.handlers import RotatingFileHandler -from pathlib import Path - -# Configure logging -LOG_DIR = Path.home() / ".config" / "youtube_cli" / "logs" -LOG_DIR.mkdir(parents=True, exist_ok=True) -LOG_FILE = LOG_DIR / "app.log" - -file_handler = RotatingFileHandler(LOG_FILE, maxBytes=10 * 1024 * 1024, backupCount=5) -file_handler.setLevel(logging.DEBUG) -file_handler.setFormatter(logging.Formatter( - "%(asctime)s | %(name)s | %(levelname)s | %(message)s", - "%Y-%m-%d %H:%M:%S" -)) - -console_handler = logging.StreamHandler() -console_handler.setLevel(logging.INFO) -console_handler.setFormatter(logging.Formatter("%(message)s")) - -logging.basicConfig( - level=logging.DEBUG, - handlers=[file_handler, console_handler], -) -logger = logging.getLogger(__name__) -``` - -**Usage Pattern:** -```python -logger.debug("Detailed debugging info") -logger.info("Normal operations") -logger.warning("Non-critical issues") -logger.error("Errors with full context") -logger.exception("Exceptions with traceback") -``` - -### 5. Logging Coverage - -#### youtube_cli/main.py -- **Search Operations**: Query logging, pagination, result display -- **Download Operations**: URL validation, directory setup, format selection, completion status -- **Archive Operations**: Loading, saving, adding videos -- **Configuration**: Loading, validation, defaults -- **Network Share**: Copy operations, path validation -- **Error Handling**: Full error context with file paths and parameters - -#### youtube_tui/services/download_manager.py -- **Download Management**: Queue processing, cancellation, errors -- **Progress Tracking**: Download status updates -- **Error Recovery**: Exception handling with context - -#### youtube_tui/services/youtube.py -- **Service Errors**: Search failures, download errors, archive issues -- **Async Operations**: Thread execution tracking - -#### youtube_tui/services/queue.py -- **Queue Operations**: Loading, saving, status updates -- **Item Management**: Add/remove operations - -#### app.py (REST API) -- **API Operations**: Request handling, error responses -- **Module Initialization**: Flask app setup - -### 6. Benefits - -1. **Production Monitoring**: Full visibility into application behavior -2. **Troubleshooting**: Detailed logs with timestamps and module context -3. **Disk Space Management**: Automatic log rotation prevents unbounded growth -4. **Development Efficiency**: Console output for quick debugging, file logs for detailed analysis -5. **Consistency**: Unified logging approach across all modules - -### 7. Testing Results - -**Verification Commands:** -```bash -# Test logging -python3 -c "from youtube_cli.main import logger; logger.info('Test message')" - -# View logs -tail -f ~/.config/youtube_cli/logs/app.log - -# Search logs -grep "ERROR" ~/.config/youtube_cli/logs/app.log -grep "WARNING" ~/.config/youtube_cli/logs/app.log -``` - -**Test Output:** -``` -2026-02-25 20:14:40 | youtube_cli.main | INFO | Test info message -2026-02-25 20:14:40 | youtube_cli.main | WARNING | Test warning message -2026-02-25 20:14:40 | youtube_cli.main | ERROR | Test error message -``` - -### 8. Git Ignore - -The `logs/` directory is already in `.gitignore`: -``` -logs/ -``` - -This ensures log files are never committed to the repository. - -### 9. Next Steps for Users - -1. **View logs**: `tail -f ~/.config/youtube_cli/logs/app.log` -2. **Search errors**: `grep "ERROR" ~/.config/youtube_cli/logs/app.log` -3. **Debug mode**: Check DEBUG level messages in the log file -4. **Rotation management**: Logs automatically rotate at 10MB with 5 backups - -### 10. Files Created/Modified - -**Created:** -- `/Users/user/Projects/youtube-cli/logs/` (directory) -- `/Users/user/Projects/youtube-cli/LOGGING_SUMMARY.md` (documentation) - -**Modified:** -- `/Users/user/Projects/youtube-cli/youtube_cli/main.py` -- `/Users/user/Projects/youtube-cli/youtube_tui/app.py` -- `/Users/user/Projects/youtube-cli/youtube_tui/services/download_manager.py` -- `/Users/user/Projects/youtube-cli/youtube_tui/services/youtube.py` -- `/Users/user/Projects/youtube-cli/youtube_tui/services/queue.py` -- `/Users/user/Projects/youtube-cli/app.py` - -### 11. Requirements Met - -✅ Logs directory created at `/Users/user/Projects/youtube-cli/logs/` -✅ Logs directory added to `.gitignore` -✅ Logging configured with rotation (10MB max, 5 backups) -✅ Logging added to all specified files: - - `/Users/user/Projects/youtube-cli/youtube_cli/main.py` - - `/Users/user/Projects/youtube-cli/youtube_tui/app.py` - - `/Users/user/Projects/youtube-cli/youtube_tui/services/download_manager.py` - - `/Users/user/Projects/youtube-cli/youtube_tui/services/youtube.py` - - `/Users/user/Projects/youtube-cli/youtube_tui/services/queue.py` - - `/Users/user/Projects/youtube-cli/app.py` -✅ Module-level loggers created -✅ All console.print statements replaced with appropriate logger calls -✅ Logging initialized in main entry points -✅ Summary document provided - ---- - -**Implementation Complete**: All requirements have been met and verified. \ No newline at end of file diff --git a/LOGGING_SUMMARY.md b/LOGGING_SUMMARY.md deleted file mode 100644 index 270bfed..0000000 --- a/LOGGING_SUMMARY.md +++ /dev/null @@ -1,114 +0,0 @@ -# Logging Implementation Summary - -## Overview -Comprehensive logging has been added to all Python files in the YouTube CLI project. - -## Changes Made - -### 1. Logs Directory -- Created `/Users/user/Projects/youtube-cli/logs/` directory -- Added `logs/` to `.gitignore` (already present) - -### 2. Logging Configuration -All Python files now have: -- **Log file**: `~/.config/youtube_cli/logs/app.log` -- **Rotation**: 10MB max, keep 5 backups -- **Level**: DEBUG (file), INFO (console) -- **Format**: `%(asctime)s | %(name)s | %(levelname)s | %(message)s` - -### 3. Files Modified - -#### `/Users/user/Projects/youtube-cli/youtube_cli/main.py` -- Added `logging` and `RotatingFileHandler` imports -- Added module-level logger: `logger = logging.getLogger(__name__)` -- Replaced all `console.print()` statements with appropriate logger calls: - - `logger.debug()` for verbose debugging info - - `logger.info()` for normal operations - - `logger.warning()` for warnings - - `logger.error()` for errors - - `logger.exception()` for exceptions (includes traceback) - -Key logging additions: -- Search operations -- Download operations -- Archive operations -- Configuration loading -- Network share operations -- Error handling with full context - -#### `/Users/user/Projects/youtube-cli/youtube_tui/app.py` -- Added logging imports and configuration -- Added module-level logger -- Added logging initialization in `main()` function - -#### `/Users/user/Projects/youtube-cli/youtube_tui/services/download_manager.py` -- Added logging imports and configuration -- Added module-level logger -- Replaced `console.print()` with: - - `logger.warning()` for cancellations - - `logger.error()` for errors - -#### `/Users/user/Projects/youtube-cli/youtube_tui/services/youtube.py` -- Added logging imports and configuration -- Added module-level logger -- Replaced `self.console.print()` with `logger.error()` for service errors - -#### `/Users/user/Projects/youtube-cli/youtube_tui/services/queue.py` -- Added logging imports and configuration -- Added module-level logger -- Replaced `console.print()` with `logger.warning()` for queue operations - -#### `/Users/user/Projects/youtube-cli/app.py` (REST API) -- Added logging imports and configuration -- Added module-level logger -- Added logging initialization in module scope - -### 4. Logging Levels Used - -| Level | Usage | Example | -|-------|-------|---------| -| `DEBUG` | Detailed debugging info | Download directory paths | -| `INFO` | Normal operations | Search queries, download starts, completions | -| `WARNING` | Non-critical issues | Invalid inputs, skipped operations | -| `ERROR` | Errors | Failed downloads, missing dependencies | -| `CRITICAL` | Critical failures | Not used (reserved for severe issues) | - -### 5. Benefits - -1. **Production Monitoring**: Full visibility into application behavior -2. **Troubleshooting**: Detailed logs with timestamps and context -3. **Performance Tracking**: Log rotation prevents disk space issues -4. **Debugging**: Both file and console output for development -5. **Consistency**: Same logging approach across all modules - -## Usage - -### View Logs in Real-Time -```bash -tail -f ~/.config/youtube_cli/logs/app.log -``` - -### Search Logs -```bash -grep "ERROR" ~/.config/youtube_cli/logs/app.log -grep "WARNING" ~/.config/youtube_cli/logs/app.log -``` - -### Log File Location -- Logs are stored in: `~/.config/youtube_cli/logs/app.log` -- Old logs are automatically rotated and archived - -## Testing - -To verify logging works: -1. Run the CLI: `python -m youtube_cli "test query"` -2. Run the TUI: `python youtube_tui/app.py` -3. Run the API: `python app.py` -4. Check logs: `cat ~/.config/youtube_cli/logs/app.log` - -## Notes - -- The `RotatingFileHandler` ensures log files don't grow indefinitely -- Console output is limited to INFO level for cleaner terminal output -- File output captures all DEBUG level messages for thorough logging -- All exceptions are logged with full tracebacks using `logger.error()` \ No newline at end of file diff --git a/README.md b/README.md index a50925d..3d472a6 100644 --- a/README.md +++ b/README.md @@ -350,4 +350,4 @@ youtube-tui ### Documentation -See [TUI.md](TUI.md) for complete TUI documentation. \ No newline at end of file +See [TUI.md](docs/TUI.md) for complete TUI documentation. \ No newline at end of file diff --git a/agent.md b/agent.md deleted file mode 100644 index 77fff93..0000000 --- a/agent.md +++ /dev/null @@ -1,122 +0,0 @@ -# YouTube CLI Agent - -## Project Overview -This is a command-line interface for browsing and downloading YouTube videos. The application allows users to search YouTube, display videos in pages of 15, and download videos using yt-dlp with progress indication. - -## Core Features -- **Search YouTube videos** with keyword queries -- **Display videos** with title, author, duration, and type (short/video) -- **Download videos** using yt-dlp with progress indication -- **Configure download locations** through configuration files -- **Handle short videos** (videos with /shorts/ in URL) with special "(short)" prefix -- **Pagination support** to view more than 15 videos per search -- **Network share integration** for copying downloaded videos - -## Project Structure -``` -youtube-cli/ -├── youtube_cli/ # Main package directory -│ ├── __init__.py # Package initialization -│ ├── __main__.py # Main entry point -│ └── main.py # Core application logic -├── setup.py # Python package setup -├── requirements.txt # Python dependencies -├── README.md # Project documentation -├── prompt.md # Prompt template -├── structure.md # Project structure documentation -└── run.sh # Run script -``` - -## Main Components - -### youtube_cli/main.py -The core application logic file containing: -- `YouTubeCLI` class with all main functionality -- Search videos using yt-dlp with pagination support -- Display videos in formatted tables with Rich library -- Download videos with progress indication -- Configuration management -- Archive tracking for downloaded videos -- Network share copying functionality -- Update checking for yt-dlp - -### Key Methods in YouTubeCLI Class -- `search_videos()`: Search YouTube videos using yt-dlp -- `display_videos()`: Display videos in a formatted table -- `download_video()`: Download individual videos with progress -- `download_playlist()`: Download YouTube playlists -- `load_config()`: Load configuration from file or use defaults -- `load_archive()`: Load archive of already downloaded videos -- `add_to_archive()`: Add videos to download archive -- `copy_to_network_share()`: Copy downloaded videos to network share -- `check_for_updates()`: Check and update yt-dlp if needed - -## Configuration -The application creates a default configuration file at `~/.config/youtube_cli/config.json` if one doesn't exist. Configuration includes: -- `download_dir`: Default download directory (set to `/Volumes/MediaServer/Youtube/`) -- `default_locations`: List of default download locations including Tech, AI, Art, Homes, Cooking, Fitness, Music, Gaming, Education, Travel, Business, Science, History, Comedy, News, Sports, Nature, Photography, Language, and Automotive categories -- `max_videos_per_page`: Number of videos per page (default: 15) -- `yt_dlp_args`: Custom yt-dlp arguments for video format and extraction -- `network_share_path`: Network share path for copying videos -- `default_network_subfolder`: Default subfolder on network share - -## Usage Examples -```bash -# Search for videos -youtube-cli "python tutorial" - -# Download a specific video -youtube-cli --download "https://www.youtube.com/watch?v=xyz123" - -# View help -youtube-cli --help - -# Check for yt-dlp updates -youtube-cli --check-update - -# Update yt-dlp -youtube-cli --update -``` - -## Dependencies -- Python 3.6+ -- yt-dlp (for video downloading) -- rich (for formatted console output) -- requests (for API calls) - -## Installation -### From Source -```bash -git clone https://github.com/yourusername/youtube-cli.git -cd youtube-cli -pip install -e . -``` - -### Using pip -```bash -pip install youtube-cli -``` - -## How It Works -1. **Search**: Users enter a search query to find YouTube videos -2. **Display**: Videos are shown 15 at a time with title, author, duration, and type -3. **Navigation**: Users can go to next page (n), search for new term (s), or quit (q) -4. **Selection**: Users can select videos by number to download -5. **Download**: Videos are downloaded using yt-dlp with progress indication -6. **Tracking**: Downloaded videos are tracked in an archive file - -## Special Features -- **Short Video Detection**: Automatically detects and marks short videos with "(short)" prefix -- **Pagination**: View 15 videos at a time with option for more -- **Multiple Download Locations**: Choose from default locations or specify custom paths -- **Network Share Integration**: Copy downloaded videos to network shares after download -- **Update Checking**: Automatically checks for and updates yt-dlp when needed -- **Archive Tracking**: Keeps track of already downloaded videos to avoid duplicates - -## Technical Details -- Uses yt-dlp for all YouTube operations -- Implements Rich library for beautiful console output -- Supports both individual video and playlist downloads -- Handles JavaScript challenges with remote components -- Includes retry mechanisms for downloads -- Cross-platform compatibility (macOS and Linux) \ No newline at end of file diff --git a/app.log b/app.log deleted file mode 100644 index 32fefb0..0000000 --- a/app.log +++ /dev/null @@ -1,14 +0,0 @@ -Error saving archive: [Errno 13] Permission denied: '/app' - * Serving Flask app 'app' - * Debug mode: on -WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. - * Running on all addresses (0.0.0.0) - * Running on http://127.0.0.1:4096 - * Running on http://192.168.122.203:4096 -Press CTRL+C to quit - * Restarting with stat -Error saving archive: [Errno 13] Permission denied: '/app' - * Debugger is active! - * Debugger PIN: 556-686-523 -192.168.122.1 - - [03/Feb/2026 19:10:11] "GET /search?q=roo+vs+cline HTTP/1.1" 200 - -127.0.0.1 - - [03/Feb/2026 19:10:13] "GET /health HTTP/1.1" 200 - diff --git a/TUI.md b/docs/TUI.md similarity index 100% rename from TUI.md rename to docs/TUI.md diff --git a/docker-setup.md b/docs/docker-setup.md similarity index 100% rename from docker-setup.md rename to docs/docker-setup.md diff --git a/structure.md b/docs/structure.md similarity index 100% rename from structure.md rename to docs/structure.md diff --git a/manual_test_tui.py b/manual_test_tui.py index 2f2d30a..a8ede00 100644 --- a/manual_test_tui.py +++ b/manual_test_tui.py @@ -4,8 +4,12 @@ Manual test script for YouTube TUI Tests all required functionality """ +import os import subprocess import sys +from pathlib import Path + +REPO_ROOT = Path(__file__).resolve().parent def print_section(title): @@ -145,7 +149,7 @@ def test_unit_tests(): capture_output=True, text=True, timeout=30, - cwd="/Users/user/Projects/youtube-cli", + cwd=str(REPO_ROOT), ) print(result.stdout) @@ -431,12 +435,13 @@ print("OK") def main(): + os.chdir(REPO_ROOT) """Run all tests""" print("=" * 60) print(" YouTube TUI Manual Test Suite") print("=" * 60) print(f"\nPython: {sys.version}") - print("Working directory: /Users/user/Projects/youtube-cli") + print(f"Working directory: {REPO_ROOT}") results = [] diff --git a/prompt.md b/prompt.md deleted file mode 100644 index d79effd..0000000 --- a/prompt.md +++ /dev/null @@ -1,18 +0,0 @@ -The goal is to make a cli app that lets you traverse videos through youtube search and listed all the videos that are display for search. It should show at max 15 videos at a time and give options for asking for more. It should denote what videos are shorts (very short videos with /short in the url) with a name starting with (short). It should allow the user to search all of youtube with a query. - -Display the Title, Name, Author, Video length of each youtube video on the list. -Give an option to get the next 15 videos in the list. -Give an option to download the video and show a status bar for the download. -Provide a configuration file that the user can set the default download location for all of this. -Let the user select from a set of default locations for where to download videos. - -When downloading the video, it should leverage yt-dlp. A valid command in yt-dlp looks like - -yt-dlp \ ---format "bestvideo[height=1080]+bestaudio/bestvideo[height<=1080]+bestaudio" \ ---download-archive "/mnt/centralstoragemedia/Youtube/Caseoh/caseoh-archive" \ ---playlist-items 1:2 "https://www.youtube.com/@caseoh_/videos" \ --o "/mnt/centralstoragemedia/Youtube/Caseoh/%(title)s.%(ext)s" \ ---write-thumbnail --extractor-args "youtube:player-client=default,-tv_simply" - -Coding Language should be python and it should work on Mac and Linux. diff --git a/pyproject.toml b/pyproject.toml index 1576330..6fef088 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,7 @@ description = "A command-line interface for browsing and downloading YouTube vid readme = "README.md" requires-python = ">=3.10" authors = [ - {name = "jarianc", email = "user@example.com"}, + {name = "Jarian Cottingham", email = "jarianc@proton.me"}, ] license = {text = "MIT"} classifiers = [ @@ -62,7 +62,7 @@ api = [ "Flask==2.3.3", ] tui = [ - "textual>=0.40.0", + "textual>=0.40.0,<2.0.0", ] [tool.uv] diff --git a/setup.py b/setup.py index d135ca3..7fb3723 100644 --- a/setup.py +++ b/setup.py @@ -6,8 +6,8 @@ with open("README.md", "r", encoding="utf-8") as fh: setup( name="youtube-cli", version="0.1.0", - author="jarianc", - author_email="user@example.com", + author="Jarian Cottingham", + author_email="jarianc@proton.me", description="A command-line interface for browsing and downloading YouTube videos", keywords="youtube, cli, download, video, yt-dlp, tui, terminal", long_description=long_description, diff --git a/tests/integration/test_screens.py b/tests/integration/test_screens.py index 9a21d60..6218e3e 100644 --- a/tests/integration/test_screens.py +++ b/tests/integration/test_screens.py @@ -40,15 +40,17 @@ class TestSearchScreen: async def test_search_action_with_empty_input(self, app): """Test search action with empty input""" + from youtube_tui.screens.search import SearchScreen + screen = SearchScreen() # Use app.run_test() to ensure proper screen mounting async with app.run_test() as pilot: + app.push_screen(screen) # Wait for the screen to be fully mounted await pilot.pause() # Mock the update_status method to track calls update_calls = [] - screen = app.screen screen.update_status = lambda message: update_calls.append(message) # Simulate pressing Enter with empty input @@ -62,8 +64,11 @@ class TestSearchScreen: """Test search action with valid input""" search_term = "python tutorial" + from youtube_tui.screens.search import SearchScreen + screen = SearchScreen() async with app.run_test() as pilot: + app.push_screen(screen) # Wait for the screen to be fully mounted await pilot.pause() @@ -83,8 +88,11 @@ class TestSearchScreen: """Test search from anywhere action""" search_term = "music" + from youtube_tui.screens.search import SearchScreen + screen = SearchScreen() async with app.run_test() as pilot: + app.push_screen(screen) # Wait for the screen to be fully mounted await pilot.pause() diff --git a/tests/unit/test_widgets.py b/tests/unit/test_widgets.py index e29eea1..493ab88 100644 --- a/tests/unit/test_widgets.py +++ b/tests/unit/test_widgets.py @@ -190,7 +190,7 @@ class TestCustomWidgets: from textual.widgets import Static widget = Static("Test content") - assert widget._Static__content == "Test content" + assert widget.renderable == "Test content" def test_static_widget_with_rich_markup(self): """Test Static widget with Rich markup""" @@ -198,14 +198,14 @@ class TestCustomWidgets: widget = Static("[bold]Test[/bold] [red]content[/red]") # The content should contain the markup - assert "[bold]" in str(widget._Static__content) + assert "[bold]" in str(widget.renderable) def test_button_widget_creation(self): """Test Button widget""" from textual.widgets import Button button = Button("Click me") - assert button.label == "Click me" + assert str(button.label) == "Click me" def test_input_widget_creation(self): """Test Input widget""" diff --git a/uv.lock b/uv.lock index c4539d4..4ba5026 100644 --- a/uv.lock +++ b/uv.lock @@ -309,7 +309,7 @@ name = "exceptiongroup" version = "1.3.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "typing-extensions", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions" }, ] sdist = { url = "https://files.pythonhosted.org/packages/50/79/66800aadf48771f6b62f7eb014e352e5d06856655206165d775e675a02c9/exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219", size = 30371, upload-time = "2025-11-21T23:01:54.787Z" } wheels = [ @@ -484,6 +484,9 @@ wheels = [ linkify = [ { name = "linkify-it-py" }, ] +plugins = [ + { name = "mdit-py-plugins" }, +] [[package]] name = "markupsafe" @@ -831,19 +834,17 @@ wheels = [ [[package]] name = "textual" -version = "8.0.2" +version = "1.0.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "markdown-it-py", extra = ["linkify"] }, - { name = "mdit-py-plugins" }, + { name = "markdown-it-py", extra = ["linkify", "plugins"] }, { name = "platformdirs" }, - { name = "pygments" }, { name = "rich" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/be/08/c6bcb1e3c4c9528ec9049f4ac685afdafc72866664270f0deb416ccbba2a/textual-8.0.2.tar.gz", hash = "sha256:7b342f3ee9a5f2f1bd42d7b598cae00ff1275da68536769510db4b7fe8cabf5d", size = 6099270, upload-time = "2026-03-03T20:23:46.858Z" } +sdist = { url = "https://files.pythonhosted.org/packages/1f/b6/59b1de04bb4dca0f21ed7ba0b19309ed7f3f5de4396edf20cc2855e53085/textual-1.0.0.tar.gz", hash = "sha256:bec9fe63547c1c552569d1b75d309038b7d456c03f86dfa3706ddb099b151399", size = 1532733, upload-time = "2024-12-12T10:42:03.286Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/77/bc/0cd17f96f00b6e8bfbca64c574088c85f3c614912b3030f313752e30a099/textual-8.0.2-py3-none-any.whl", hash = "sha256:4ceadbe0e8a30eb80f9995000f4d031f711420a31b02da38f3482957b7c50ce4", size = 719174, upload-time = "2026-03-03T20:23:50.46Z" }, + { url = "https://files.pythonhosted.org/packages/ac/bb/5fb6656c625019cd653d5215237d7cd6e0b12e7eae4195c3d1c91b2136fc/textual-1.0.0-py3-none-any.whl", hash = "sha256:2d4a701781c05104925e463ae370c630567c70c2880e92ab838052e3e23c986f", size = 660456, upload-time = "2024-12-12T10:42:00.375Z" }, ] [[package]] @@ -989,7 +990,7 @@ requires-dist = [ { name = "requests", specifier = ">=2.28.0" }, { name = "rich", specifier = ">=13.0.0" }, { name = "ruff", marker = "extra == 'dev'", specifier = ">=0.1.0" }, - { name = "textual", marker = "extra == 'tui'", specifier = ">=0.40.0" }, + { name = "textual", marker = "extra == 'tui'", specifier = ">=0.40.0,<2.0.0" }, { name = "types-requests", marker = "extra == 'dev'", specifier = ">=2.28.0" }, { name = "yt-dlp" }, ] diff --git a/web/server/gunicorn.conf.py b/web/server/gunicorn.conf.py index 6a5e1c8..49e7775 100644 --- a/web/server/gunicorn.conf.py +++ b/web/server/gunicorn.conf.py @@ -24,8 +24,9 @@ if os.environ.get('DOCKER'): errorlog = "-" loglevel = "info" else: - accesslog = "/home/user/repos/youtube-cli/web/server/gunicorn-access.log" - errorlog = "/home/user/repos/youtube-cli/web/server/gunicorn-error.log" + log_dir = os.environ.get("GUNICORN_LOG_DIR", os.path.dirname(os.path.abspath(__file__))) + accesslog = os.path.join(log_dir, "gunicorn-access.log") + errorlog = os.path.join(log_dir, "gunicorn-error.log") loglevel = "debug" # Process naming diff --git a/~/Downloads/youtube/downloaded_videos.json b/~/Downloads/youtube/downloaded_videos.json deleted file mode 100644 index afc7de6..0000000 --- a/~/Downloads/youtube/downloaded_videos.json +++ /dev/null @@ -1,2347 +0,0 @@ -{ - "xsNna_Zof6Y": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=xsNna_Zof6Y", - "downloaded_at": "2025-12-14T18:47:34.470985" - }, - "5No8WLPQzdg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5No8WLPQzdg", - "downloaded_at": "2025-12-14T18:50:21.649564" - }, - "8oxJiUEgR5I": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=8oxJiUEgR5I", - "downloaded_at": "2025-12-14T18:51:33.121495" - }, - "zRJ2x-Yqq4s": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=zRJ2x-Yqq4s", - "downloaded_at": "2025-12-14T18:52:07.684259" - }, - "91kfolYkRNM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=91kfolYkRNM", - "downloaded_at": "2025-12-14T18:53:24.946976" - }, - "kZ7L5Bfsy5w": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=kZ7L5Bfsy5w", - "downloaded_at": "2025-12-14T18:55:19.704970" - }, - "ik9yv4BVGlg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ik9yv4BVGlg", - "downloaded_at": "2025-12-14T18:59:14.215761" - }, - "AbJxnEwgNBM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=AbJxnEwgNBM", - "downloaded_at": "2025-12-14T19:03:38.465557" - }, - "_gmGAFoNWIA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=_gmGAFoNWIA", - "downloaded_at": "2025-12-14T19:04:24.562283" - }, - "ruFtQD0Tb_Q": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ruFtQD0Tb_Q", - "downloaded_at": "2025-12-14T19:08:22.978421" - }, - "SIW52U05I4M": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=SIW52U05I4M", - "downloaded_at": "2025-12-14T19:12:46.907626" - }, - "lF_tchFqKNE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=lF_tchFqKNE", - "downloaded_at": "2025-12-14T19:16:45.781181" - }, - "QuYVQ5i94AI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=QuYVQ5i94AI", - "downloaded_at": "2025-12-14T19:18:02.301155" - }, - "iZvpSckbd-o": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=iZvpSckbd-o", - "downloaded_at": "2025-12-14T19:21:27.332894" - }, - "NX2pf3YjGWU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=NX2pf3YjGWU", - "downloaded_at": "2025-12-14T19:24:10.928193" - }, - "piLbjdg4hGc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/piLbjdg4hGc", - "downloaded_at": "2025-12-14T19:29:09.791221" - }, - "K8yzx-rVJxE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=K8yzx-rVJxE", - "downloaded_at": "2025-12-14T19:33:19.248697" - }, - "9rKoxR0w-CI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=9rKoxR0w-CI", - "downloaded_at": "2025-12-14T23:55:42.184565" - }, - "KHatYI0LvOo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/KHatYI0LvOo", - "downloaded_at": "2025-12-14T23:55:52.467002" - }, - "j3ZPLzkGVx4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=j3ZPLzkGVx4", - "downloaded_at": "2025-12-14T23:56:16.011080" - }, - "Vl74FwoCqhw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Vl74FwoCqhw", - "downloaded_at": "2025-12-14T23:56:43.180856" - }, - "LaLdKhVi1EE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=LaLdKhVi1EE", - "downloaded_at": "2025-12-15T00:01:54.631693" - }, - "2kn13EftlxY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=2kn13EftlxY", - "downloaded_at": "2025-12-15T00:02:34.454126" - }, - "5rlZtasM-Pk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5rlZtasM-Pk", - "downloaded_at": "2025-12-15T00:03:21.181555" - }, - "2OAbU3WSPV4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=2OAbU3WSPV4", - "downloaded_at": "2025-12-15T00:03:47.646263" - }, - "cCMR47L5D5k": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=cCMR47L5D5k", - "downloaded_at": "2025-12-15T00:04:08.036117" - }, - "A1yopv8Kl34": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=A1yopv8Kl34", - "downloaded_at": "2025-12-15T00:04:58.220356" - }, - "ZNaT03-xamE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ZNaT03-xamE", - "downloaded_at": "2025-12-15T00:06:02.079133" - }, - "7AQtAKKxvIw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7AQtAKKxvIw", - "downloaded_at": "2025-12-15T00:06:15.011739" - }, - "k8NZMYTZx9g": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=k8NZMYTZx9g", - "downloaded_at": "2025-12-15T02:10:44.569554" - }, - "q4w5kOcudVA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=q4w5kOcudVA", - "downloaded_at": "2025-12-15T02:11:02.724974" - }, - "rIPsNGmIKlU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/rIPsNGmIKlU", - "downloaded_at": "2025-12-15T02:11:12.927487" - }, - "D3coZntThbw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/D3coZntThbw", - "downloaded_at": "2025-12-15T02:11:23.618902" - }, - "UqM4P4M5DVk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/UqM4P4M5DVk", - "downloaded_at": "2025-12-15T02:11:34.636663" - }, - "qc2GCcdvCIU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=qc2GCcdvCIU", - "downloaded_at": "2025-12-15T02:11:59.132693" - }, - "HrV86GqlY8o": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=HrV86GqlY8o", - "downloaded_at": "2025-12-15T02:12:33.034445" - }, - "df5hcP4tBBA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/df5hcP4tBBA", - "downloaded_at": "2025-12-15T02:12:43.309561" - }, - "MIC7TVk0nWU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=MIC7TVk0nWU", - "downloaded_at": "2025-12-15T02:13:12.864541" - }, - "YL8J2cpqht4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=YL8J2cpqht4", - "downloaded_at": "2025-12-15T02:13:49.453424" - }, - "L6iMmCSayBQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=L6iMmCSayBQ", - "downloaded_at": "2025-12-15T02:14:09.138585" - }, - "xm1okr2y9oM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/xm1okr2y9oM", - "downloaded_at": "2025-12-15T02:14:19.200131" - }, - "2qZG0C5xYkw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/2qZG0C5xYkw", - "downloaded_at": "2025-12-15T02:14:29.287203" - }, - "m7uZUN1Z8HY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=m7uZUN1Z8HY", - "downloaded_at": "2025-12-15T02:16:10.269249" - }, - "isvgOSoe1Es": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/isvgOSoe1Es", - "downloaded_at": "2025-12-15T02:16:20.678252" - }, - "fhph4TUY80I": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=fhph4TUY80I", - "downloaded_at": "2025-12-15T03:33:54.639818" - }, - "micZWf6i35g": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=micZWf6i35g", - "downloaded_at": "2025-12-15T03:42:50.872217" - }, - "PBBotIgRHMg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=PBBotIgRHMg", - "downloaded_at": "2025-12-15T03:44:27.465926" - }, - "fRTaOqiTq9c": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=fRTaOqiTq9c", - "downloaded_at": "2025-12-15T14:47:52.383011" - }, - "kc4dPuzcHJA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/kc4dPuzcHJA", - "downloaded_at": "2025-12-15T14:48:02.649492" - }, - "jozNEpY8iik": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jozNEpY8iik", - "downloaded_at": "2025-12-15T14:48:24.738280" - }, - "3pslPbfpnzk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=3pslPbfpnzk", - "downloaded_at": "2025-12-15T14:49:04.041791" - }, - "AmeP6MWwCAo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/AmeP6MWwCAo", - "downloaded_at": "2025-12-15T14:49:14.267484" - }, - "tz1RWzSelWs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/tz1RWzSelWs", - "downloaded_at": "2025-12-15T14:49:24.916427" - }, - "0YA4AkY6HxU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/0YA4AkY6HxU", - "downloaded_at": "2025-12-15T14:49:35.703896" - }, - "BK5U111oGRk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/BK5U111oGRk", - "downloaded_at": "2025-12-15T14:49:46.093091" - }, - "NnfpELU7Iao": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=NnfpELU7Iao", - "downloaded_at": "2025-12-15T14:53:12.135383" - }, - "K1aL1rNGcA0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/K1aL1rNGcA0", - "downloaded_at": "2025-12-15T14:53:22.632606" - }, - "4ysyybi4068": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=4ysyybi4068", - "downloaded_at": "2025-12-15T14:53:48.991648" - }, - "AnQVwV7cPXw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=AnQVwV7cPXw", - "downloaded_at": "2025-12-15T14:55:28.496261" - }, - "jKIpc6rS8iA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jKIpc6rS8iA", - "downloaded_at": "2025-12-15T14:56:29.384917" - }, - "UsQzAzysehI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=UsQzAzysehI", - "downloaded_at": "2025-12-15T14:56:57.975066" - }, - "gIZhle4AmtQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/gIZhle4AmtQ", - "downloaded_at": "2025-12-15T14:57:08.275474" - }, - "Rjuqe8gkNNI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Rjuqe8gkNNI", - "downloaded_at": "2025-12-15T23:14:58.605692" - }, - "gquMyGx-CPo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=gquMyGx-CPo", - "downloaded_at": "2025-12-15T23:15:15.807121" - }, - "Q46Vs_Cdj48": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Q46Vs_Cdj48", - "downloaded_at": "2025-12-15T23:15:48.168931" - }, - "V_Mhk8cLMcw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=V_Mhk8cLMcw", - "downloaded_at": "2025-12-15T23:16:37.983621" - }, - "y_tbBLh8fFI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=y_tbBLh8fFI", - "downloaded_at": "2025-12-15T23:16:52.534017" - }, - "nU-FyzKOvoQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=nU-FyzKOvoQ", - "downloaded_at": "2025-12-15T23:17:45.602404" - }, - "mrCiwkWMvuo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=mrCiwkWMvuo", - "downloaded_at": "2025-12-15T23:19:18.461840" - }, - "UYCeAt8RHC4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=UYCeAt8RHC4", - "downloaded_at": "2025-12-15T23:29:33.689346" - }, - "BSXpDDB5mb0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=BSXpDDB5mb0", - "downloaded_at": "2025-12-15T23:30:33.899913" - }, - "Vt_GVKG-kaE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Vt_GVKG-kaE", - "downloaded_at": "2025-12-15T23:32:02.134687" - }, - "BbmR7Ly8AWQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=BbmR7Ly8AWQ", - "downloaded_at": "2025-12-15T23:33:37.890518" - }, - "jOJ-3Ucc50s": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jOJ-3Ucc50s", - "downloaded_at": "2025-12-15T23:35:12.232382" - }, - "4hCBkfgqUQE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=4hCBkfgqUQE", - "downloaded_at": "2025-12-15T23:35:37.301447" - }, - "E_dk57HPtO8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=E_dk57HPtO8", - "downloaded_at": "2025-12-15T23:37:02.522920" - }, - "8TCCgaY8RKw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=8TCCgaY8RKw", - "downloaded_at": "2025-12-15T23:37:29.430923" - }, - "tT1Irx0ae14": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=tT1Irx0ae14", - "downloaded_at": "2025-12-15T23:38:11.705569" - }, - "DHM488CpT7Y": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=DHM488CpT7Y", - "downloaded_at": "2025-12-15T23:39:35.268871" - }, - "jhdFOxMvNr4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jhdFOxMvNr4", - "downloaded_at": "2025-12-15T23:42:06.272059" - }, - "quuGgwWVUfc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=quuGgwWVUfc", - "downloaded_at": "2025-12-15T23:45:36.175144" - }, - "fpk6Sj_JYTY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=fpk6Sj_JYTY", - "downloaded_at": "2025-12-15T23:55:35.142230" - }, - "2LipRRwy_Ms": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=2LipRRwy_Ms", - "downloaded_at": "2025-12-19T22:21:00.214518" - }, - "qSVq2EkwGjk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=qSVq2EkwGjk", - "downloaded_at": "2025-12-16T10:10:51.240066" - }, - "O04RM-KCP68": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=O04RM-KCP68", - "downloaded_at": "2025-12-16T10:11:18.260190" - }, - "GalgkA42Qw0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=GalgkA42Qw0", - "downloaded_at": "2025-12-16T10:13:51.345273" - }, - "nYMIV3HDGSE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=nYMIV3HDGSE", - "downloaded_at": "2025-12-16T10:14:02.627579" - }, - "14U8KFThIY4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=14U8KFThIY4", - "downloaded_at": "2025-12-16T10:16:40.198380" - }, - "01RIL-3a6tc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=01RIL-3a6tc", - "downloaded_at": "2025-12-16T10:17:31.400142" - }, - "teAbKrSuBHA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=teAbKrSuBHA", - "downloaded_at": "2025-12-16T10:17:58.408049" - }, - "xhOWBnfcJ90": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=xhOWBnfcJ90", - "downloaded_at": "2025-12-16T10:18:34.036037" - }, - "8cqa3b7Tncg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=8cqa3b7Tncg", - "downloaded_at": "2025-12-16T10:19:46.963158" - }, - "Hj_kSCEBktI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Hj_kSCEBktI", - "downloaded_at": "2025-12-16T10:20:41.330537" - }, - "z6Rd-k9lPEA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=z6Rd-k9lPEA", - "downloaded_at": "2025-12-16T10:55:21.863455" - }, - "D_Tk9aoEBHM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=D_Tk9aoEBHM", - "downloaded_at": "2025-12-16T11:01:14.307889" - }, - "x_Esrxt7GII": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=x_Esrxt7GII", - "downloaded_at": "2025-12-16T10:25:29.066198" - }, - "WilsiH8bOws": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=WilsiH8bOws", - "downloaded_at": "2025-12-16T10:25:41.828679" - }, - "r2yR5rrUtWw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=r2yR5rrUtWw", - "downloaded_at": "2025-12-16T10:52:05.026229" - }, - "1OCe8EDn1NU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=1OCe8EDn1NU", - "downloaded_at": "2025-12-16T10:53:09.364042" - }, - "Tmw2IBV5eQM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Tmw2IBV5eQM", - "downloaded_at": "2025-12-16T10:54:04.091996" - }, - "xbj9bmlEW4c": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=xbj9bmlEW4c", - "downloaded_at": "2025-12-16T10:55:17.159822" - }, - "8ae2ZnAp9d8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/8ae2ZnAp9d8", - "downloaded_at": "2025-12-16T10:55:33.067704" - }, - "TdMPzIN51Fo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/TdMPzIN51Fo", - "downloaded_at": "2025-12-16T10:55:47.407939" - }, - "5WrWk0HFCAM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5WrWk0HFCAM", - "downloaded_at": "2025-12-16T10:56:43.567068" - }, - "0EztmFNyScc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=0EztmFNyScc", - "downloaded_at": "2025-12-16T10:59:38.829825" - }, - "jR6yyu7snVc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/jR6yyu7snVc", - "downloaded_at": "2025-12-16T10:59:51.014906" - }, - "w1Pi79TDhMQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/w1Pi79TDhMQ", - "downloaded_at": "2025-12-16T11:00:04.811986" - }, - "mmkMFqT8ENk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=mmkMFqT8ENk", - "downloaded_at": "2025-12-16T11:01:09.414712" - }, - "U1L_4g-P0gU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/U1L_4g-P0gU", - "downloaded_at": "2025-12-16T11:01:25.868149" - }, - "AZlF1BJjtaU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=AZlF1BJjtaU", - "downloaded_at": "2025-12-16T11:02:13.201631" - }, - "pfVhAtJt5_o": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=pfVhAtJt5_o", - "downloaded_at": "2025-12-16T12:18:53.889159" - }, - "y0aodYDLA1E": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=y0aodYDLA1E", - "downloaded_at": "2025-12-16T12:19:46.452578" - }, - "INi-xKpYjbE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=INi-xKpYjbE", - "downloaded_at": "2025-12-16T12:21:51.786903" - }, - "A2UDhfw0eFU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=A2UDhfw0eFU", - "downloaded_at": "2025-12-16T12:23:50.082059" - }, - "dbysj18RMII": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=dbysj18RMII", - "downloaded_at": "2025-12-16T12:24:17.053248" - }, - "_p6NemXF_BY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=_p6NemXF_BY", - "downloaded_at": "2025-12-16T12:24:33.922879" - }, - "2iMTROFAH0Y": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=2iMTROFAH0Y", - "downloaded_at": "2025-12-16T12:25:16.566454" - }, - "PjDFk8xdtGw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=PjDFk8xdtGw", - "downloaded_at": "2025-12-16T12:30:54.784098" - }, - "jHbyxG6Cc74": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jHbyxG6Cc74", - "downloaded_at": "2025-12-16T12:31:12.042251" - }, - "ZulRRv3h6nw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ZulRRv3h6nw", - "downloaded_at": "2025-12-16T12:32:10.918079" - }, - "yQkLSTxytEU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=yQkLSTxytEU", - "downloaded_at": "2025-12-16T12:33:03.960096" - }, - "GZGHK_f4rrc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=GZGHK_f4rrc", - "downloaded_at": "2025-12-16T12:33:35.598514" - }, - "V5sG2M2aWSA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=V5sG2M2aWSA", - "downloaded_at": "2025-12-16T12:34:06.302307" - }, - "z7EM5WtLvxo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=z7EM5WtLvxo", - "downloaded_at": "2025-12-16T12:34:18.346396" - }, - "UC_gGzYa6jk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=UC_gGzYa6jk", - "downloaded_at": "2025-12-16T13:12:38.744453" - }, - "5yuq34HQAdc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5yuq34HQAdc", - "downloaded_at": "2025-12-16T13:13:16.224233" - }, - "A_YeFflgTp8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=A_YeFflgTp8", - "downloaded_at": "2025-12-16T13:14:35.605960" - }, - "X3uV-nNsLAE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/X3uV-nNsLAE", - "downloaded_at": "2025-12-16T13:19:49.315064" - }, - "xnSew-tCuPo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=xnSew-tCuPo", - "downloaded_at": "2025-12-16T13:22:03.534547" - }, - "HhbKRWesOY8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=HhbKRWesOY8", - "downloaded_at": "2025-12-16T13:22:39.666993" - }, - "weeG9yOp3i4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=weeG9yOp3i4", - "downloaded_at": "2025-12-16T13:26:38.423693" - }, - "GPja-uhdGq8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=GPja-uhdGq8", - "downloaded_at": "2025-12-16T13:27:17.691272" - }, - "dYPW5Rlwn8g": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=dYPW5Rlwn8g", - "downloaded_at": "2025-12-16T13:28:42.313734" - }, - "ZXk-HRmkTPk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ZXk-HRmkTPk", - "downloaded_at": "2025-12-16T13:30:10.278336" - }, - "vSwumoSlZTo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=vSwumoSlZTo", - "downloaded_at": "2025-12-16T13:33:08.074252" - }, - "osuI3fD6L3g": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=osuI3fD6L3g", - "downloaded_at": "2025-12-16T13:34:32.544122" - }, - "XAnBcAVkC5Q": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=XAnBcAVkC5Q", - "downloaded_at": "2025-12-16T13:35:27.497563" - }, - "sddZ4kCLZ68": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=sddZ4kCLZ68", - "downloaded_at": "2025-12-16T13:36:45.969141" - }, - "Ha_xrFHyuUY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Ha_xrFHyuUY", - "downloaded_at": "2025-12-16T13:38:33.689731" - }, - "0eGK21JxgTY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=0eGK21JxgTY", - "downloaded_at": "2025-12-16T13:39:08.806448" - }, - "_0IUm5Ac9ZM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=_0IUm5Ac9ZM", - "downloaded_at": "2025-12-16T13:41:45.965386" - }, - "WK-61N-dE8E": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=WK-61N-dE8E", - "downloaded_at": "2025-12-16T13:43:30.137987" - }, - "IfSTf8xnaX4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=IfSTf8xnaX4", - "downloaded_at": "2025-12-16T13:46:39.045135" - }, - "iiwByWHs6UU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=iiwByWHs6UU", - "downloaded_at": "2025-12-16T13:48:47.253839" - }, - "qajTuTQUPsQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=qajTuTQUPsQ", - "downloaded_at": "2025-12-16T13:49:13.010693" - }, - "cwMzqflzmAs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=cwMzqflzmAs", - "downloaded_at": "2025-12-17T18:13:54.798467" - }, - "7gLCfNqo7PM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7gLCfNqo7PM", - "downloaded_at": "2025-12-16T21:43:20.581066" - }, - "54pzwSVa2IE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=54pzwSVa2IE", - "downloaded_at": "2025-12-16T21:44:26.766003" - }, - "UwDCaZ8Gb5Y": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=UwDCaZ8Gb5Y", - "downloaded_at": "2025-12-17T18:07:37.906506" - }, - "-H86wDzyAJE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=-H86wDzyAJE", - "downloaded_at": "2025-12-16T21:46:12.437141" - }, - "AEP44_I5pRg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=AEP44_I5pRg", - "downloaded_at": "2025-12-17T18:28:11.390533" - }, - "nSzUT10jJFU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=nSzUT10jJFU", - "downloaded_at": "2025-12-16T21:47:31.062655" - }, - "0FWOMdLVRjg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=0FWOMdLVRjg", - "downloaded_at": "2025-12-16T21:50:21.561723" - }, - "_ECH5g6YTTE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=_ECH5g6YTTE", - "downloaded_at": "2025-12-16T21:51:02.814558" - }, - "HBd0olxI-No": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=HBd0olxI-No", - "downloaded_at": "2025-12-16T21:52:28.404843" - }, - "RI_QenA39Rc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=RI_QenA39Rc", - "downloaded_at": "2025-12-16T21:53:01.654264" - }, - "7mDwk6ZupY4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7mDwk6ZupY4", - "downloaded_at": "2025-12-16T21:53:28.185198" - }, - "uWsD2HoId9I": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=uWsD2HoId9I", - "downloaded_at": "2025-12-16T21:54:11.820304" - }, - "lxvqwxHvCXY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=lxvqwxHvCXY", - "downloaded_at": "2025-12-16T21:55:27.655443" - }, - "DBKmMKceGZM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=DBKmMKceGZM", - "downloaded_at": "2025-12-16T21:57:38.115412" - }, - "84Tv1cDRL2I": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=84Tv1cDRL2I", - "downloaded_at": "2025-12-16T22:01:57.706937" - }, - "q08zU2kdPf4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=q08zU2kdPf4", - "downloaded_at": "2025-12-16T22:02:14.699961" - }, - "x9Uui23F4oc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/x9Uui23F4oc", - "downloaded_at": "2025-12-16T22:30:28.333320" - }, - "ntZYePxeBog": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ntZYePxeBog", - "downloaded_at": "2025-12-16T22:53:16.458701" - }, - "yYf2yFD-iIk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=yYf2yFD-iIk", - "downloaded_at": "2025-12-16T23:04:53.244237" - }, - "MIAjIkknlfc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=MIAjIkknlfc", - "downloaded_at": "2025-12-17T17:20:56.746536" - }, - "w9nDOXY06SQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=w9nDOXY06SQ", - "downloaded_at": "2025-12-17T18:09:12.384535" - }, - "mQGVIo5_kFo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=mQGVIo5_kFo", - "downloaded_at": "2025-12-17T18:16:09.277412" - }, - "IDGEMP0EDNQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=IDGEMP0EDNQ", - "downloaded_at": "2025-12-17T18:16:51.568468" - }, - "FG75hVA0xsw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=FG75hVA0xsw", - "downloaded_at": "2025-12-17T18:18:01.504959" - }, - "LLLTlzh6-SI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=LLLTlzh6-SI", - "downloaded_at": "2025-12-17T18:24:01.441318" - }, - "r6oFa7pUhEk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=r6oFa7pUhEk", - "downloaded_at": "2025-12-17T18:24:49.419198" - }, - "RRNbUATtHbk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=RRNbUATtHbk", - "downloaded_at": "2025-12-17T18:25:14.553971" - }, - "TEplZWBPJNY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=TEplZWBPJNY", - "downloaded_at": "2025-12-17T18:25:33.802720" - }, - "QEgZqpJFFl0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=QEgZqpJFFl0", - "downloaded_at": "2025-12-17T18:27:32.169010" - }, - "G7vcW2AclRg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=G7vcW2AclRg", - "downloaded_at": "2025-12-17T18:30:39.194015" - }, - "1OlxkxW0CVs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=1OlxkxW0CVs", - "downloaded_at": "2025-12-17T18:33:12.447522" - }, - "_HZ-EQ8Hc8E": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=_HZ-EQ8Hc8E", - "downloaded_at": "2025-12-17T20:12:37.629889" - }, - "Dl1gFBNa0Ik": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Dl1gFBNa0Ik", - "downloaded_at": "2025-12-17T20:13:20.364631" - }, - "pMIEZwaybWI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=pMIEZwaybWI", - "downloaded_at": "2025-12-17T20:16:39.695873" - }, - "vJ4zu4sqHl8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=vJ4zu4sqHl8", - "downloaded_at": "2025-12-17T20:17:19.962537" - }, - "uQDgtME-7DQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=uQDgtME-7DQ", - "downloaded_at": "2025-12-17T20:21:10.000880" - }, - "9cps7Q_IrX0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=9cps7Q_IrX0", - "downloaded_at": "2025-12-17T20:21:46.226218" - }, - "qtVmq0JE-IA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=qtVmq0JE-IA", - "downloaded_at": "2025-12-17T20:25:22.945341" - }, - "tMiYBmfkyqc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=tMiYBmfkyqc", - "downloaded_at": "2025-12-17T20:26:12.816626" - }, - "la5BafeXsUI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=la5BafeXsUI", - "downloaded_at": "2025-12-17T22:45:20.176552" - }, - "MxRGXIe1qPo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=MxRGXIe1qPo", - "downloaded_at": "2025-12-17T20:29:44.980649" - }, - "Cfd1eO7hRiw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Cfd1eO7hRiw", - "downloaded_at": "2025-12-18T22:16:28.878529" - }, - "-saXw1EipX0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=-saXw1EipX0", - "downloaded_at": "2025-12-17T20:34:09.214933" - }, - "lEsTDlPr9Vg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=lEsTDlPr9Vg", - "downloaded_at": "2025-12-17T20:37:47.985811" - }, - "GHhcyH99inE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=GHhcyH99inE", - "downloaded_at": "2025-12-17T20:38:41.883319" - }, - "HOFp8bHTN30": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=HOFp8bHTN30", - "downloaded_at": "2025-12-17T20:39:54.430676" - }, - "MsdJgEinb34": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=MsdJgEinb34", - "downloaded_at": "2025-12-17T22:45:15.445892" - }, - "EF7SxgcDfCo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=EF7SxgcDfCo", - "downloaded_at": "2025-12-17T22:45:24.523009" - }, - "67mRFXSbCw0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=67mRFXSbCw0", - "downloaded_at": "2025-12-17T22:46:04.266181" - }, - "R3w4Go1s1hM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=R3w4Go1s1hM", - "downloaded_at": "2025-12-17T22:46:08.811581" - }, - "Z9nycymUd-I": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Z9nycymUd-I", - "downloaded_at": "2025-12-17T22:46:13.617577" - }, - "9B66SqaYCZs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=9B66SqaYCZs", - "downloaded_at": "2025-12-17T22:45:59.921160" - }, - "0RNkbcD1NyA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=0RNkbcD1NyA", - "downloaded_at": "2025-12-17T22:53:25.458327" - }, - "EEb_0dja8tE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=EEb_0dja8tE", - "downloaded_at": "2025-12-17T22:53:29.814039" - }, - "RfGuJ5nTeVw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=RfGuJ5nTeVw", - "downloaded_at": "2025-12-17T23:00:10.882317" - }, - "YJr-kHy6STg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=YJr-kHy6STg", - "downloaded_at": "2025-12-17T23:05:48.203740" - }, - "slTmWbaungY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/slTmWbaungY", - "downloaded_at": "2025-12-17T23:06:07.886515" - }, - "aVUqaB0IMh4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=aVUqaB0IMh4", - "downloaded_at": "2025-12-17T23:08:30.103320" - }, - "Lqc1jmbSxnE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Lqc1jmbSxnE", - "downloaded_at": "2025-12-17T23:20:40.399854" - }, - "3FGNw28xBr0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=3FGNw28xBr0", - "downloaded_at": "2025-12-18T21:54:46.654039" - }, - "Z2LgmIGE2nI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Z2LgmIGE2nI", - "downloaded_at": "2025-12-17T23:22:40.050626" - }, - "IclJ9nbtYgI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=IclJ9nbtYgI", - "downloaded_at": "2025-12-17T23:24:19.210099" - }, - "XD1jqFaA-uI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=XD1jqFaA-uI", - "downloaded_at": "2025-12-17T23:26:08.733576" - }, - "fezdPuh7Szw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/fezdPuh7Szw", - "downloaded_at": "2025-12-17T23:26:30.739987" - }, - "QVtfWsZNUSE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/QVtfWsZNUSE", - "downloaded_at": "2025-12-17T23:26:46.177355" - }, - "YTGzncKU5RY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=YTGzncKU5RY", - "downloaded_at": "2025-12-17T23:28:44.521622" - }, - "6-tw3-UVfuA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/6-tw3-UVfuA", - "downloaded_at": "2025-12-17T23:29:00.585680" - }, - "P2oLu7F4S8c": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/P2oLu7F4S8c", - "downloaded_at": "2025-12-17T23:29:22.656505" - }, - "Kih9GqZhokA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Kih9GqZhokA", - "downloaded_at": "2025-12-17T23:30:30.471970" - }, - "qMwcFIByL2g": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=qMwcFIByL2g", - "downloaded_at": "2025-12-17T23:32:43.642874" - }, - "8IZnj4Z9CHU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=8IZnj4Z9CHU", - "downloaded_at": "2025-12-17T23:34:42.621270" - }, - "NpyDM_F2ZO0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/NpyDM_F2ZO0", - "downloaded_at": "2025-12-17T23:34:59.498372" - }, - "EdEwRXiQsfc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=EdEwRXiQsfc", - "downloaded_at": "2025-12-17T23:36:16.297812" - }, - "bcUNGhaJ5K8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=bcUNGhaJ5K8", - "downloaded_at": "2025-12-18T00:38:25.593858" - }, - "v1nsZIim9pU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=v1nsZIim9pU", - "downloaded_at": "2025-12-18T00:44:55.086534" - }, - "nj0omDxupGg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=nj0omDxupGg", - "downloaded_at": "2025-12-18T00:39:17.535740" - }, - "CelbuKz9sgg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=CelbuKz9sgg", - "downloaded_at": "2025-12-18T00:40:48.123370" - }, - "M_izsszzW8U": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=M_izsszzW8U", - "downloaded_at": "2025-12-18T00:44:50.583066" - }, - "UBqh6ud5LqY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=UBqh6ud5LqY", - "downloaded_at": "2025-12-18T00:50:41.515379" - }, - "6wfNLN96ZUk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=6wfNLN96ZUk", - "downloaded_at": "2025-12-18T00:51:12.499354" - }, - "P5YXTTS8OFk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=P5YXTTS8OFk", - "downloaded_at": "2025-12-18T00:52:23.134923" - }, - "7AImkA96mE8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7AImkA96mE8", - "downloaded_at": "2025-12-18T00:53:10.071059" - }, - "0DET4YFzS6A": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=0DET4YFzS6A", - "downloaded_at": "2025-12-18T00:54:21.582668" - }, - "asZ1zhef8Ss": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=asZ1zhef8Ss", - "downloaded_at": "2025-12-18T01:24:14.544186" - }, - "yZqrrq6VpKY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=yZqrrq6VpKY", - "downloaded_at": "2025-12-18T01:24:19.026137" - }, - "sdKK8a5j8Rg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=sdKK8a5j8Rg", - "downloaded_at": "2025-12-18T01:24:23.068873" - }, - "bz6OONg5hmg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=bz6OONg5hmg", - "downloaded_at": "2025-12-18T01:16:35.945131" - }, - "KatLQzWpphI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=KatLQzWpphI", - "downloaded_at": "2025-12-18T01:24:27.247372" - }, - "trcxW8mPBWY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=trcxW8mPBWY", - "downloaded_at": "2025-12-18T01:32:39.510048" - }, - "QarizoUnRfk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=QarizoUnRfk", - "downloaded_at": "2025-12-18T01:25:40.152151" - }, - "kOX4Xf_oCGs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=kOX4Xf_oCGs", - "downloaded_at": "2025-12-18T01:26:19.745366" - }, - "spV3tUWPpBM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=spV3tUWPpBM", - "downloaded_at": "2025-12-18T01:27:33.145739" - }, - "8IZIGu6rKEs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=8IZIGu6rKEs", - "downloaded_at": "2025-12-18T01:36:30.734429" - }, - "Zw53kxy7yL0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Zw53kxy7yL0", - "downloaded_at": "2025-12-18T01:37:21.324875" - }, - "DYrucIWig24": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=DYrucIWig24", - "downloaded_at": "2025-12-18T01:38:46.319412" - }, - "BiwTMKF2CGw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=BiwTMKF2CGw", - "downloaded_at": "2025-12-18T01:38:59.912162" - }, - "g51xTKOXkk0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=g51xTKOXkk0", - "downloaded_at": "2025-12-18T01:41:02.583867" - }, - "mjfnpjvw9jY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=mjfnpjvw9jY", - "downloaded_at": "2025-12-18T01:42:13.701776" - }, - "p_UKL0Sjy84": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=p_UKL0Sjy84", - "downloaded_at": "2025-12-18T02:35:10.678126" - }, - "GgDqgixKTpU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=GgDqgixKTpU", - "downloaded_at": "2025-12-18T02:35:14.778083" - }, - "EW9Y8rDm4kE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=EW9Y8rDm4kE", - "downloaded_at": "2025-12-18T02:35:19.124436" - }, - "JBeSvg4B7Us": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=JBeSvg4B7Us", - "downloaded_at": "2025-12-18T02:35:23.431033" - }, - "RekIzxuvGXY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=RekIzxuvGXY", - "downloaded_at": "2025-12-18T02:35:29.980913" - }, - "MjiJgniYZmY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=MjiJgniYZmY", - "downloaded_at": "2025-12-18T02:35:34.400464" - }, - "VL5mSLma4D4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=VL5mSLma4D4", - "downloaded_at": "2025-12-18T02:40:41.588594" - }, - "f9fbqks3BS8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=f9fbqks3BS8", - "downloaded_at": "2025-12-18T02:24:19.738667" - }, - "YUryJOAiPa4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=YUryJOAiPa4", - "downloaded_at": "2025-12-18T02:32:13.765067" - }, - "fYInlAmPnGo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=fYInlAmPnGo", - "downloaded_at": "2025-12-18T02:35:06.283562" - }, - "NxPWwHUJCqM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=NxPWwHUJCqM", - "downloaded_at": "2025-12-18T02:40:46.125898" - }, - "s_-nIgo71_w": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=s_-nIgo71_w", - "downloaded_at": "2025-12-18T21:11:47.723389" - }, - "3NM_ZZgLqJM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/3NM_ZZgLqJM", - "downloaded_at": "2025-12-18T21:11:59.407105" - }, - "a87-fd4ADkM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/a87-fd4ADkM", - "downloaded_at": "2025-12-18T21:12:11.276639" - }, - "7x1P80X1V3E": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7x1P80X1V3E", - "downloaded_at": "2025-12-18T21:15:24.413609" - }, - "j-7pDFmdbc0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=j-7pDFmdbc0", - "downloaded_at": "2025-12-18T21:20:00.856162" - }, - "qsxlNb2tpcY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=qsxlNb2tpcY", - "downloaded_at": "2025-12-18T21:21:56.713564" - }, - "HVHVkKt-ldc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=HVHVkKt-ldc", - "downloaded_at": "2025-12-18T21:23:43.684749" - }, - "wEbGhYjn4QI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=wEbGhYjn4QI", - "downloaded_at": "2025-12-18T21:28:03.386584" - }, - "2vAwohg-gMQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/2vAwohg-gMQ", - "downloaded_at": "2025-12-18T21:28:16.933129" - }, - "___p9JYbTc0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=___p9JYbTc0", - "downloaded_at": "2025-12-18T21:29:26.641402" - }, - "5vaH5vRKlPk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/5vaH5vRKlPk", - "downloaded_at": "2025-12-18T21:29:39.248510" - }, - "-nECx4DOE84": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=-nECx4DOE84", - "downloaded_at": "2025-12-18T21:30:28.833055" - }, - "o3PhC_VJdXo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=o3PhC_VJdXo", - "downloaded_at": "2025-12-18T21:32:34.139114" - }, - "x3IXMAgWXls": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/x3IXMAgWXls", - "downloaded_at": "2025-12-18T21:32:49.057846" - }, - "IIe3DMzaRSA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/IIe3DMzaRSA", - "downloaded_at": "2025-12-18T21:33:01.446631" - }, - "vLnu21fS22s": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=vLnu21fS22s", - "downloaded_at": "2025-12-18T21:54:41.754589" - }, - "jTMjb-1SVHo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jTMjb-1SVHo", - "downloaded_at": "2025-12-18T21:55:46.246683" - }, - "RWEnT11cQLc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=RWEnT11cQLc", - "downloaded_at": "2025-12-18T21:58:08.914664" - }, - "e1P_6pw5JGo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=e1P_6pw5JGo", - "downloaded_at": "2025-12-18T22:00:53.084193" - }, - "pgKfaFI4T4Y": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=pgKfaFI4T4Y", - "downloaded_at": "2025-12-18T22:01:54.211061" - }, - "dbtVgZGaFmE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=dbtVgZGaFmE", - "downloaded_at": "2025-12-18T22:04:16.227667" - }, - "X0hd_v8qRiY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=X0hd_v8qRiY", - "downloaded_at": "2025-12-18T22:07:34.662466" - }, - "iqIRjMkHVjY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=iqIRjMkHVjY", - "downloaded_at": "2025-12-18T22:08:33.998702" - }, - "_iz7rFTQ4Ec": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=_iz7rFTQ4Ec", - "downloaded_at": "2025-12-18T22:09:39.336968" - }, - "l9b_6WLemmg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=l9b_6WLemmg", - "downloaded_at": "2025-12-18T22:10:28.197001" - }, - "e9FQ3dms_70": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=e9FQ3dms_70", - "downloaded_at": "2025-12-18T22:12:59.844729" - }, - "Ne9g2Jhs7Xw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Ne9g2Jhs7Xw", - "downloaded_at": "2025-12-18T22:13:44.723952" - }, - "jiJGbWOSdMo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jiJGbWOSdMo", - "downloaded_at": "2025-12-18T22:16:24.066311" - }, - "CpaVG2LeXLs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=CpaVG2LeXLs", - "downloaded_at": "2025-12-18T23:36:45.820056" - }, - "IDrWtgTb3D4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=IDrWtgTb3D4", - "downloaded_at": "2025-12-18T23:39:30.889787" - }, - "Wrizk-TqsGY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Wrizk-TqsGY", - "downloaded_at": "2025-12-18T23:39:35.536348" - }, - "P9aVMgBbs5M": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/P9aVMgBbs5M", - "downloaded_at": "2025-12-18T23:39:40.122908" - }, - "KNjaSJa6mf4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=KNjaSJa6mf4", - "downloaded_at": "2025-12-18T23:39:57.305793" - }, - "jiWXxAueYlU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jiWXxAueYlU", - "downloaded_at": "2025-12-18T23:39:44.480342" - }, - "XsBIcuiLyks": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=XsBIcuiLyks", - "downloaded_at": "2025-12-18T23:39:50.553012" - }, - "8oWKB26xUng": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/8oWKB26xUng", - "downloaded_at": "2025-12-18T23:29:29.183737" - }, - "m0esUvVu9W8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=m0esUvVu9W8", - "downloaded_at": "2025-12-18T23:41:40.108049" - }, - "KK-TJ4ovy2Y": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/KK-TJ4ovy2Y", - "downloaded_at": "2025-12-18T23:41:44.168138" - }, - "ct0QFRz3tKY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/ct0QFRz3tKY", - "downloaded_at": "2025-12-18T23:41:48.323632" - }, - "pLm01vW1UxY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/pLm01vW1UxY", - "downloaded_at": "2025-12-18T23:41:52.611467" - }, - "Mub-xo619PY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Mub-xo619PY", - "downloaded_at": "2025-12-18T23:41:57.202756" - }, - "8obcTTYtjQM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=8obcTTYtjQM", - "downloaded_at": "2025-12-18T23:39:26.093016" - }, - "W9GpPW-u71s": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=W9GpPW-u71s", - "downloaded_at": "2025-12-18T23:41:35.547038" - }, - "SjVwQgBYb30": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/SjVwQgBYb30", - "downloaded_at": "2025-12-18T23:42:11.327294" - }, - "bZqwJgxDAbQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=bZqwJgxDAbQ", - "downloaded_at": "2025-12-19T00:02:55.266250" - }, - "YJbC1bFiVIk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=YJbC1bFiVIk", - "downloaded_at": "2025-12-19T00:03:24.275961" - }, - "XF39adTfubc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=XF39adTfubc", - "downloaded_at": "2025-12-20T13:43:35.980475" - }, - "FjIJsmxLGZY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=FjIJsmxLGZY", - "downloaded_at": "2025-12-19T00:08:13.928454" - }, - "DRRRsU9ieX0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=DRRRsU9ieX0", - "downloaded_at": "2025-12-19T00:08:55.200754" - }, - "5HQR8TqLJCs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5HQR8TqLJCs", - "downloaded_at": "2025-12-19T00:09:44.014258" - }, - "hZTl83iopzY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=hZTl83iopzY", - "downloaded_at": "2025-12-19T00:10:32.334175" - }, - "5OVg6CBFkXI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5OVg6CBFkXI", - "downloaded_at": "2025-12-19T00:17:21.563855" - }, - "KnclgciVucM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/KnclgciVucM", - "downloaded_at": "2025-12-19T00:17:43.080159" - }, - "7bmBr2g7sXI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7bmBr2g7sXI", - "downloaded_at": "2025-12-19T00:23:59.879378" - }, - "9nOp5Yl89f0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=9nOp5Yl89f0", - "downloaded_at": "2025-12-20T13:41:59.776960" - }, - "LQ-0wT7mLAc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=LQ-0wT7mLAc", - "downloaded_at": "2025-12-19T00:31:22.168993" - }, - "3Wq_Wh508MQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=3Wq_Wh508MQ", - "downloaded_at": "2025-12-19T00:33:45.061741" - }, - "X9PIGRruuSs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=X9PIGRruuSs", - "downloaded_at": "2025-12-19T00:43:11.999748" - }, - "dei4SOGUEKs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=dei4SOGUEKs", - "downloaded_at": "2025-12-19T00:43:51.156943" - }, - "eG9mQfaf0cI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=eG9mQfaf0cI", - "downloaded_at": "2025-12-19T00:47:28.240196" - }, - "ff20MI6vz5c": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ff20MI6vz5c", - "downloaded_at": "2025-12-19T00:48:07.688940" - }, - "FYMVMi1Fg1M": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=FYMVMi1Fg1M", - "downloaded_at": "2025-12-19T00:49:08.443998" - }, - "-9xwUrEnShQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=-9xwUrEnShQ", - "downloaded_at": "2025-12-19T00:51:39.479415" - }, - "85Dy9RIAvmo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=85Dy9RIAvmo", - "downloaded_at": "2025-12-19T00:52:04.777057" - }, - "eZN-3qt0X7M": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=eZN-3qt0X7M", - "downloaded_at": "2025-12-19T20:23:59.129260" - }, - "zlt1ye9jN8o": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=zlt1ye9jN8o", - "downloaded_at": "2025-12-19T20:16:08.775625" - }, - "ucxFNmLmuc8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ucxFNmLmuc8", - "downloaded_at": "2025-12-19T08:26:34.034382" - }, - "OeHTXayrHLw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=OeHTXayrHLw", - "downloaded_at": "2025-12-19T08:25:05.394039" - }, - "i9GRxprugYQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=i9GRxprugYQ", - "downloaded_at": "2025-12-19T07:59:53.203625" - }, - "RiJNUFo8pHM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=RiJNUFo8pHM", - "downloaded_at": "2025-12-19T08:13:15.677865" - }, - "LUPB9Z_W76Q": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=LUPB9Z_W76Q", - "downloaded_at": "2025-12-19T08:15:10.005049" - }, - "C0giU9A-4JA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=C0giU9A-4JA", - "downloaded_at": "2025-12-19T08:16:31.519374" - }, - "K9NZJ1-z0G8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=K9NZJ1-z0G8", - "downloaded_at": "2025-12-19T08:19:28.314103" - }, - "LbPd_Z5Kf8g": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=LbPd_Z5Kf8g", - "downloaded_at": "2025-12-19T08:20:09.125807" - }, - "n3L5lbY7wrY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=n3L5lbY7wrY", - "downloaded_at": "2025-12-19T20:24:03.824999" - }, - "QaotWGAKYrc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=QaotWGAKYrc", - "downloaded_at": "2025-12-19T08:24:53.601310" - }, - "sysCAmIwEvg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=sysCAmIwEvg", - "downloaded_at": "2025-12-19T08:26:29.417648" - }, - "dYEMBHInlC0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=dYEMBHInlC0", - "downloaded_at": "2025-12-19T08:43:22.678182" - }, - "fTWz4ttnGY8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=fTWz4ttnGY8", - "downloaded_at": "2025-12-19T08:43:56.533623" - }, - "oZWzghXsosE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=oZWzghXsosE", - "downloaded_at": "2025-12-19T08:44:11.665038" - }, - "ivnNVP5NIVQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ivnNVP5NIVQ", - "downloaded_at": "2025-12-19T08:44:27.635168" - }, - "XyB_k3qs3fE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/XyB_k3qs3fE", - "downloaded_at": "2025-12-19T08:53:36.842417" - }, - "vYZYlobyxjo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=vYZYlobyxjo", - "downloaded_at": "2025-12-19T08:49:23.690016" - }, - "yFJhwik9WR8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=yFJhwik9WR8", - "downloaded_at": "2025-12-19T08:49:36.351397" - }, - "LdsvzhOWybc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/LdsvzhOWybc", - "downloaded_at": "2025-12-19T08:49:49.259851" - }, - "xWu7kIhMi1I": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/xWu7kIhMi1I", - "downloaded_at": "2025-12-19T08:50:08.120127" - }, - "mvh0Q45mxB8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/mvh0Q45mxB8", - "downloaded_at": "2025-12-19T08:50:24.245052" - }, - "f90zoVJY07U": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=f90zoVJY07U", - "downloaded_at": "2025-12-19T08:50:37.083138" - }, - "o194LGEnH14": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=o194LGEnH14", - "downloaded_at": "2025-12-19T08:50:57.793290" - }, - "g7A_Nzb220g": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=g7A_Nzb220g", - "downloaded_at": "2025-12-19T08:51:14.429280" - }, - "zNpw8yO5wBY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/zNpw8yO5wBY", - "downloaded_at": "2025-12-19T08:51:25.306341" - }, - "Js6Q4H9WV9A": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/Js6Q4H9WV9A", - "downloaded_at": "2025-12-19T08:51:37.104754" - }, - "V70Ljv2RsFY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/V70Ljv2RsFY", - "downloaded_at": "2025-12-19T08:53:05.063747" - }, - "6bqvwgDH2ig": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/6bqvwgDH2ig", - "downloaded_at": "2025-12-19T08:53:19.798208" - }, - "6aMPmolZmhg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/6aMPmolZmhg", - "downloaded_at": "2025-12-19T08:53:32.614389" - }, - "IAxGG5Lu54U": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/IAxGG5Lu54U", - "downloaded_at": "2025-12-19T08:53:48.255735" - }, - "FZ8Oj3pOryo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/FZ8Oj3pOryo", - "downloaded_at": "2025-12-19T08:54:00.231732" - }, - "ZDkLDQmF_KU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/ZDkLDQmF_KU", - "downloaded_at": "2025-12-19T08:54:14.277993" - }, - "hMup1HUrYxQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/hMup1HUrYxQ", - "downloaded_at": "2025-12-19T08:54:37.774417" - }, - "SkcuKtB8iHI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/SkcuKtB8iHI", - "downloaded_at": "2025-12-19T08:54:55.455478" - }, - "kAOgUjdFVtU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=kAOgUjdFVtU", - "downloaded_at": "2025-12-19T08:59:05.445246" - }, - "doB4uO-Nsk8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=doB4uO-Nsk8", - "downloaded_at": "2025-12-19T08:59:36.995923" - }, - "FPAE8kVlzIA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/FPAE8kVlzIA", - "downloaded_at": "2025-12-19T08:59:54.670397" - }, - "EXW-Ly9NBVM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/EXW-Ly9NBVM", - "downloaded_at": "2025-12-19T09:00:09.847773" - }, - "nBy3PKdVJHQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/nBy3PKdVJHQ", - "downloaded_at": "2025-12-19T09:00:22.329164" - }, - "bs3ORNMJTc4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/bs3ORNMJTc4", - "downloaded_at": "2025-12-19T09:00:38.524592" - }, - "9j-y6XlaE80": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=9j-y6XlaE80", - "downloaded_at": "2025-12-19T09:16:55.750194" - }, - "KJh4ytDeuL8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=KJh4ytDeuL8", - "downloaded_at": "2025-12-19T09:17:32.577850" - }, - "NWiPVMDh7GE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=NWiPVMDh7GE", - "downloaded_at": "2025-12-19T09:18:10.970276" - }, - "sKMH9dgqPdU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=sKMH9dgqPdU", - "downloaded_at": "2025-12-19T09:18:22.302978" - }, - "feBvhLFQEDk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=feBvhLFQEDk", - "downloaded_at": "2025-12-19T09:18:41.358776" - }, - "6HCqOF7K890": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=6HCqOF7K890", - "downloaded_at": "2025-12-19T09:19:18.809302" - }, - "p18UayMMIWk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=p18UayMMIWk", - "downloaded_at": "2025-12-19T09:20:03.307079" - }, - "FAKOnN5BCzs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=FAKOnN5BCzs", - "downloaded_at": "2025-12-19T09:21:31.362967" - }, - "ceEBC_aGWdg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/ceEBC_aGWdg", - "downloaded_at": "2025-12-19T09:21:48.234919" - }, - "QE4IQlwOgiA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=QE4IQlwOgiA", - "downloaded_at": "2025-12-19T09:22:22.352428" - }, - "6JnKf5voTSE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/6JnKf5voTSE", - "downloaded_at": "2025-12-19T09:22:34.146825" - }, - "iwyARHUbvNI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=iwyARHUbvNI", - "downloaded_at": "2025-12-19T09:23:12.935100" - }, - "-yrMgNJz8tY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/-yrMgNJz8tY", - "downloaded_at": "2025-12-19T09:23:29.597947" - }, - "Y4bbMrlHqm4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/Y4bbMrlHqm4", - "downloaded_at": "2025-12-19T09:23:42.361827" - }, - "I_-3HN1ueNk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=I_-3HN1ueNk", - "downloaded_at": "2025-12-19T09:24:06.141323" - }, - "wyOcb2MHzIs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=wyOcb2MHzIs", - "downloaded_at": "2025-12-19T09:37:32.288381" - }, - "40gZBLdDSZA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=40gZBLdDSZA", - "downloaded_at": "2025-12-19T09:37:55.002825" - }, - "xCGPH4_RyPc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=xCGPH4_RyPc", - "downloaded_at": "2025-12-19T09:40:28.079052" - }, - "ZQaJ5yUxugE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ZQaJ5yUxugE", - "downloaded_at": "2025-12-19T09:48:55.693305" - }, - "vZ4_DNBfy4c": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=vZ4_DNBfy4c", - "downloaded_at": "2025-12-19T09:49:16.200078" - }, - "OL2lAx2N-Dw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=OL2lAx2N-Dw", - "downloaded_at": "2025-12-19T09:49:30.250624" - }, - "9meeVehRS6A": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=9meeVehRS6A", - "downloaded_at": "2025-12-19T09:49:55.011967" - }, - "qym-P4GTdIU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=qym-P4GTdIU", - "downloaded_at": "2025-12-19T09:50:41.972143" - }, - "_YhTUtE1Y7E": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=_YhTUtE1Y7E", - "downloaded_at": "2025-12-19T09:53:24.009674" - }, - "d3hnFM2UHa4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=d3hnFM2UHa4", - "downloaded_at": "2025-12-19T09:54:54.597024" - }, - "Y7ylUu6esIY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Y7ylUu6esIY", - "downloaded_at": "2025-12-19T09:55:20.266444" - }, - "InWYwM2DwpM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=InWYwM2DwpM", - "downloaded_at": "2025-12-19T09:56:03.278283" - }, - "1O8oguP35i0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=1O8oguP35i0", - "downloaded_at": "2025-12-19T20:10:56.970064" - }, - "EV1OmO1_a8A": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=EV1OmO1_a8A", - "downloaded_at": "2025-12-19T20:11:01.775614" - }, - "hM7WtIUllw0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=hM7WtIUllw0", - "downloaded_at": "2025-12-19T20:24:23.684270" - }, - "5XvU8QB4CaE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5XvU8QB4CaE", - "downloaded_at": "2025-12-19T20:24:19.427708" - }, - "BL92-769Ops": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=BL92-769Ops", - "downloaded_at": "2025-12-19T19:59:55.722394" - }, - "cB8q5OmlsPw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=cB8q5OmlsPw", - "downloaded_at": "2025-12-19T20:16:13.292422" - }, - "CKldgtpNHmQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=CKldgtpNHmQ", - "downloaded_at": "2025-12-19T20:24:09.098397" - }, - "JbJA6oCphFI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=JbJA6oCphFI", - "downloaded_at": "2025-12-19T20:24:13.401317" - }, - "i0LI02MhY6I": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=i0LI02MhY6I", - "downloaded_at": "2025-12-19T20:23:54.039640" - }, - "X5o_C6CX5W4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=X5o_C6CX5W4", - "downloaded_at": "2025-12-19T20:27:36.543227" - }, - "7m5-eAxxu34": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7m5-eAxxu34", - "downloaded_at": "2025-12-19T20:31:54.464461" - }, - "1P-ZPK7ZTSk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=1P-ZPK7ZTSk", - "downloaded_at": "2025-12-19T22:20:55.295661" - }, - "32NRN-QBm3E": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=32NRN-QBm3E", - "downloaded_at": "2025-12-19T22:20:43.073635" - }, - "yaLb8bqOPO4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=yaLb8bqOPO4", - "downloaded_at": "2025-12-19T23:12:14.717166" - }, - "pSbOj09n-Bc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=pSbOj09n-Bc", - "downloaded_at": "2025-12-19T23:12:18.942090" - }, - "365Yqn4Ir3U": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=365Yqn4Ir3U", - "downloaded_at": "2025-12-19T23:12:23.895416" - }, - "pxeZAPwHvAo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=pxeZAPwHvAo", - "downloaded_at": "2025-12-19T23:12:28.282284" - }, - "TbJikS-Sy0U": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=TbJikS-Sy0U", - "downloaded_at": "2025-12-19T23:12:33.383571" - }, - "4dYHBthPRng": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=4dYHBthPRng", - "downloaded_at": "2025-12-19T23:12:37.995802" - }, - "1bYix1fxFSI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=1bYix1fxFSI", - "downloaded_at": "2025-12-19T23:12:42.810479" - }, - "OFTa8aXI4rU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=OFTa8aXI4rU", - "downloaded_at": "2025-12-19T23:13:32.945898" - }, - "e7XSyurZz94": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=e7XSyurZz94", - "downloaded_at": "2025-12-19T23:13:37.321499" - }, - "DWf_fts2mIk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=DWf_fts2mIk", - "downloaded_at": "2025-12-19T23:13:41.702748" - }, - "oxBEjKHIJd8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=oxBEjKHIJd8", - "downloaded_at": "2025-12-19T23:13:46.409394" - }, - "VmFtcsjIkeg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=VmFtcsjIkeg", - "downloaded_at": "2025-12-19T23:19:50.326161" - }, - "3-O8OFuuVtQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=3-O8OFuuVtQ", - "downloaded_at": "2025-12-19T23:13:28.640300" - }, - "1kLlZFnruBw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=1kLlZFnruBw", - "downloaded_at": "2025-12-19T23:19:45.975810" - }, - "7Vv69qZELYg": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7Vv69qZELYg", - "downloaded_at": "2025-12-20T09:49:26.835185" - }, - "MbSPm6sv7aw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=MbSPm6sv7aw", - "downloaded_at": "2025-12-20T09:50:47.606286" - }, - "VDxe0qomBPA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=VDxe0qomBPA", - "downloaded_at": "2025-12-20T09:54:17.875289" - }, - "7armU_28U3s": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=7armU_28U3s", - "downloaded_at": "2025-12-20T09:56:11.629490" - }, - "vmrieVOcnrk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=vmrieVOcnrk", - "downloaded_at": "2025-12-20T09:56:42.399487" - }, - "EWIuoCZNoRo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=EWIuoCZNoRo", - "downloaded_at": "2025-12-20T09:57:31.164871" - }, - "XGrnqKSPOLY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=XGrnqKSPOLY", - "downloaded_at": "2025-12-20T09:58:35.375464" - }, - "VIl30b5cG9U": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=VIl30b5cG9U", - "downloaded_at": "2025-12-20T10:00:04.238086" - }, - "ZOlNe9_kHks": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ZOlNe9_kHks", - "downloaded_at": "2025-12-20T10:01:11.529290" - }, - "9l6fBIgSEbA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=9l6fBIgSEbA", - "downloaded_at": "2025-12-20T10:02:46.236817" - }, - "Cv8_2IntsmA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Cv8_2IntsmA", - "downloaded_at": "2025-12-20T10:03:43.172682" - }, - "aCXJ5dwiklM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=aCXJ5dwiklM", - "downloaded_at": "2025-12-20T10:04:39.866219" - }, - "XiKzDLAgpAM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=XiKzDLAgpAM", - "downloaded_at": "2025-12-20T10:07:27.758700" - }, - "xFpGqC949qU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=xFpGqC949qU", - "downloaded_at": "2025-12-20T10:09:16.129868" - }, - "JzwvxG0WxN4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=JzwvxG0WxN4", - "downloaded_at": "2025-12-20T10:11:08.307187" - }, - "bEwejna-Mr4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=bEwejna-Mr4", - "downloaded_at": "2025-12-20T13:20:06.867257" - }, - "88hPimt3kSU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=88hPimt3kSU", - "downloaded_at": "2025-12-20T13:23:27.747478" - }, - "dXp_xkP4Mg4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=dXp_xkP4Mg4", - "downloaded_at": "2025-12-20T13:32:48.304565" - }, - "PUPEidO1Cqw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=PUPEidO1Cqw", - "downloaded_at": "2025-12-20T13:36:05.440073" - }, - "vjsuFibjWUk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=vjsuFibjWUk", - "downloaded_at": "2025-12-20T13:39:33.677347" - }, - "yNfMv8VEwwk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=yNfMv8VEwwk", - "downloaded_at": "2025-12-20T13:41:36.531343" - }, - "hRh1KtOIPNA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/hRh1KtOIPNA", - "downloaded_at": "2025-12-20T13:41:55.019199" - }, - "RgwT5AkPFlQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=RgwT5AkPFlQ", - "downloaded_at": "2025-12-20T13:43:31.254564" - }, - "xh1PbW8vWv4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=xh1PbW8vWv4", - "downloaded_at": "2025-12-20T13:44:49.057037" - }, - "eccPKbwaWBE": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=eccPKbwaWBE", - "downloaded_at": "2025-12-20T13:47:39.615418" - }, - "PTmwGbfeLgo": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=PTmwGbfeLgo", - "downloaded_at": "2025-12-20T14:28:19.081273" - }, - "4_t13chPpEI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=4_t13chPpEI", - "downloaded_at": "2025-12-20T14:30:10.026565" - }, - "Jvk-goQTtig": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=Jvk-goQTtig", - "downloaded_at": "2025-12-20T14:30:59.684105" - }, - "v2eHA1JiYXU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=v2eHA1JiYXU", - "downloaded_at": "2025-12-20T14:32:47.980947" - }, - "2MubfoNz5Yw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=2MubfoNz5Yw", - "downloaded_at": "2025-12-20T14:33:46.553706" - }, - "jh-W8ybsb6k": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jh-W8ybsb6k", - "downloaded_at": "2025-12-20T14:34:54.479936" - }, - "ndPG4gqBTUU": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ndPG4gqBTUU", - "downloaded_at": "2025-12-20T14:35:23.994218" - }, - "QoXSg0_JyPM": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=QoXSg0_JyPM", - "downloaded_at": "2025-12-20T14:36:00.284633" - }, - "_u89243SFj0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=_u89243SFj0", - "downloaded_at": "2025-12-20T14:40:34.520723" - }, - "PJ6ZEYMhzgs": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=PJ6ZEYMhzgs", - "downloaded_at": "2025-12-20T14:43:06.775071" - }, - "wI-KYRdmx-E": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=wI-KYRdmx-E", - "downloaded_at": "2025-12-20T14:44:03.429149" - }, - "nhrBuYADREk": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=nhrBuYADREk", - "downloaded_at": "2025-12-20T14:46:04.407558" - }, - "exXuCPzcbUw": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=exXuCPzcbUw", - "downloaded_at": "2025-12-20T14:48:25.145219" - }, - "2gulzClYkbc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=2gulzClYkbc", - "downloaded_at": "2025-12-20T14:49:36.042948" - }, - "nVpgO6xEF8Y": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=nVpgO6xEF8Y", - "downloaded_at": "2025-12-20T15:55:58.748408" - }, - "5zV7_TQiSO0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5zV7_TQiSO0", - "downloaded_at": "2025-12-20T17:03:27.808014" - }, - "nj7Uw7oCbL4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=nj7Uw7oCbL4", - "downloaded_at": "2025-12-20T17:06:40.903444" - }, - "pHIYTTS4MEQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/shorts/pHIYTTS4MEQ", - "downloaded_at": "2025-12-20T17:06:45.889319" - }, - "ke0mjYAeSVQ": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=ke0mjYAeSVQ", - "downloaded_at": "2025-12-20T17:06:36.149913" - }, - "-ldSlx5VMo0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=-ldSlx5VMo0", - "downloaded_at": "2025-12-20T23:59:41.533646" - }, - "v-En7qY5vzY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=v-En7qY5vzY", - "downloaded_at": "2025-12-21T13:08:27.248555" - }, - "5HFRs8X4gU0": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=5HFRs8X4gU0", - "downloaded_at": "2025-12-21T20:51:42.843085" - }, - "jTsUQ7vlbD8": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=jTsUQ7vlbD8", - "downloaded_at": "2025-12-26T16:23:34.782181" - }, - "mzmz1rIRxzA": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=mzmz1rIRxzA", - "downloaded_at": "2025-12-26T16:49:28.495897" - }, - "UdLRAYjsgso": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=UdLRAYjsgso", - "downloaded_at": "2025-12-26T16:49:41.359951" - }, - "fSDp4M1hfjY": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=fSDp4M1hfjY", - "downloaded_at": "2025-12-26T16:20:29.658222" - }, - "x3s0C-7shz4": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=x3s0C-7shz4", - "downloaded_at": "2025-12-26T16:20:47.266285" - }, - "1T1VmylvTRc": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=1T1VmylvTRc", - "downloaded_at": "2025-12-26T16:21:05.149096" - }, - "HvE6UhHuDOI": { - "title": "Unknown Title", - "url": "https://www.youtube.com/watch?v=HvE6UhHuDOI", - "downloaded_at": "2025-12-26T16:21:22.176042" - } -} \ No newline at end of file