yt-info-extract


Nameyt-info-extract JSON
Version 1.1.0 PyPI version JSON
download
home_pageNone
SummaryExtract video information from YouTube videos including title, description, channel name, publication date and views
upload_time2025-09-03 09:29:30
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT License Copyright (c) 2025 Khaldoon Sinjab Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords api automation channel cli description extract information metadata title video views youtube
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # YouTube Video Information Extractor

[![CI](https://github.com/sinjab/yt_info_extract/workflows/CI/badge.svg)](https://github.com/sinjab/yt_info_extract/actions)
[![PyPI version](https://badge.fury.io/py/yt-info-extract.svg)](https://badge.fury.io/py/yt-info-extract)
[![Python Support](https://img.shields.io/pypi/pyversions/yt-info-extract.svg)](https://pypi.org/project/yt-info-extract/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Code Coverage](https://codecov.io/gh/sinjab/yt_info_extract/branch/main/graph/badge.svg)](https://codecov.io/gh/sinjab/yt_info_extract)
[![Code Quality](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)

A robust Python library for extracting YouTube video metadata including title, description, channel name, publication date, and view count with multiple extraction strategies.

## Features

- **Multiple Extraction Strategies**: YouTube Data API v3 (official), yt-dlp, pytubefix
- **Automatic Fallback**: Seamlessly switches between methods if one fails
- **Simple Input**: Accepts YouTube video IDs only (11 characters)
- **Batch Processing**: Extract information from multiple videos efficiently
- **Multiple Output Formats**: Text, JSON, CSV
- **Command Line Interface**: Easy-to-use CLI for quick extractions
- **Python Library**: Full programmatic access for integration
- **Robust Error Handling**: Graceful handling of failures with retry logic
- **Rate Limiting**: Built-in delays to respect YouTube's servers

## Installation

```bash
pip install yt-info-extract
```

### Optional Dependencies

For the best experience, install all extraction backends:

```bash
# For YouTube Data API v3 support (recommended)
pip install google-api-python-client

# For yt-dlp support (most robust fallback)
pip install yt-dlp

# For pytubefix support (lightweight fallback)
pip install pytubefix
```

## Quick Start

### Python Library Usage

```python
from yt_info_extract import get_video_info

# Extract video information
info = get_video_info("jNQXAC9IVRw")

print(f"Title: {info['title']}")
print(f"Channel: {info['channel_name']}")
print(f"Views: {info['views']:,}")
print(f"Published: {info['publication_date']}")
```

### Command Line Usage

```bash
# Extract video information
yt-info jNQXAC9IVRw

# Export to JSON
yt-info -f json -o video.json jNQXAC9IVRw

# Process multiple videos
yt-info --batch video_ids.txt --output-dir results/

# Use specific extraction strategy
yt-info -s api --api-key YOUR_KEY jNQXAC9IVRw
```

## YouTube Data API v3 Setup (Recommended)

The YouTube Data API v3 is the official, most reliable method. It requires a free API key:

1. Go to [Google Cloud Console](https://console.cloud.google.com/)
2. Create a new project or select an existing one
3. Enable the YouTube Data API v3
4. Create credentials (API Key)
5. Restrict the API key to YouTube Data API v3

```bash
# Set your API key as environment variable
export YOUTUBE_API_KEY="your_api_key_here"

# Now use the library
yt-info jNQXAC9IVRw
```

## Usage Examples

### Basic Usage

```python
from yt_info_extract import YouTubeVideoInfoExtractor

# Initialize extractor
extractor = YouTubeVideoInfoExtractor(api_key="your_key")

# Extract video info
info = extractor.get_video_info("jNQXAC9IVRw")

if info:
    print(f"Title: {info['title']}")
    print(f"Channel: {info['channel_name']}")
    print(f"Views: {info['views']:,}")
    print(f"Published: {info['publication_date']}")
    print(f"Description: {info['description'][:100]}...")
```

### Batch Processing

```python
from yt_info_extract import get_video_info_batch

video_ids = ["jNQXAC9IVRw", "dQw4w9WgXcQ", "_OBlgSz8sSM"]
results = get_video_info_batch(video_ids)

for result in results:
    if not result.get('error'):
        print(f"{result['title']} - {result['views']:,} views")
```

### Export Data

```python
from yt_info_extract import get_video_info, export_video_info

# Get video info
info = get_video_info("jNQXAC9IVRw")

# Export to JSON
export_video_info(info, "video.json")

# Export batch results to CSV
batch_results = get_video_info_batch(["jNQXAC9IVRw", "dQw4w9WgXcQ"])
export_video_info(batch_results, "videos.csv", format_type="csv")
```

### Video ID Format

```python
from yt_info_extract import get_video_info

# Only video IDs are accepted (11 characters: A-Z, a-z, 0-9, _, -):
video_id = "jNQXAC9IVRw"
info = get_video_info(video_id)
print(f"✓ {video_id} -> {info['title']}")

# URLs are NOT supported - extract the video ID manually if needed:
# https://www.youtube.com/watch?v=jNQXAC9IVRw -> jNQXAC9IVRw
```

## Command Line Interface

### Basic Commands

```bash
# Extract video information
yt-info jNQXAC9IVRw

# Use different output formats
yt-info -f compact jNQXAC9IVRw
yt-info -f stats jNQXAC9IVRw
yt-info -f json jNQXAC9IVRw

# Export to file
yt-info -f json -o video.json jNQXAC9IVRw
yt-info -f csv -o video.csv jNQXAC9IVRw
```

### Batch Processing

```bash
# Create a file with video IDs only (one per line)
echo "jNQXAC9IVRw" > video_ids.txt
echo "dQw4w9WgXcQ" >> video_ids.txt

# Process all videos
yt-info --batch video_ids.txt --output-dir results/

# With summary report
yt-info --batch video_ids.txt --summary --output-dir results/
```

### API Key Usage

```bash
# Method 1: Environment variable
export YOUTUBE_API_KEY="your_api_key_here"
yt-info jNQXAC9IVRw

# Method 2: Command line argument
yt-info --api-key "your_api_key_here" jNQXAC9IVRw

# Force specific strategy
yt-info -s api --api-key "your_key" jNQXAC9IVRw
yt-info -s yt_dlp jNQXAC9IVRw
```

### Utility Commands

```bash
# Test API key
yt-info --test-api

# List available strategies
yt-info --list-strategies

# Verbose output
yt-info -v jNQXAC9IVRw
```

## Extraction Strategies

### 1. YouTube Data API v3 (Recommended)

- **Pros**: Official, reliable, comprehensive data, compliant with ToS
- **Cons**: Requires API key, has quota limits (10,000 units/day free)
- **Best for**: Production applications, commercial use, reliable automation

```python
extractor = YouTubeVideoInfoExtractor(api_key="your_key", strategy="api")
```

### 2. yt-dlp (Most Robust Fallback)

- **Pros**: No API key needed, very robust, actively maintained
- **Cons**: Violates YouTube ToS, can break with YouTube updates
- **Best for**: Personal projects, research, when API quotas are insufficient

```python
extractor = YouTubeVideoInfoExtractor(strategy="yt_dlp")
```

### 3. pytubefix (Lightweight Fallback)

- **Pros**: No API key needed, simple, lightweight
- **Cons**: Violates YouTube ToS, less robust than yt-dlp
- **Best for**: Simple scripts, minimal dependencies

```python
extractor = YouTubeVideoInfoExtractor(strategy="pytubefix")
```

### 4. Auto Strategy (Default)

Automatically tries strategies in order of preference:
1. YouTube Data API v3 (if API key available)
2. yt-dlp (if installed)
3. pytubefix (if installed)

```python
extractor = YouTubeVideoInfoExtractor(strategy="auto")  # Default
```

## Data Structure

Each video information dictionary contains:

```python
{
    "title": "Video title",
    "description": "Full video description",
    "channel_name": "Channel name",
    "publication_date": "2005-04-23T00:00:00Z",  # ISO format
    "views": 123456789,  # Integer view count
    "extraction_method": "youtube_api"  # Method used
}
```

## Configuration Options

```python
extractor = YouTubeVideoInfoExtractor(
    api_key="your_key",           # YouTube Data API key
    strategy="auto",              # Extraction strategy
    timeout=30,                   # Request timeout (seconds)
    max_retries=3,                # Maximum retry attempts
    backoff_factor=0.75,          # Exponential backoff factor
    rate_limit_delay=0.1,         # Delay between requests
)
```

## Error Handling

The library handles errors gracefully:

```python
info = get_video_info("invalid_video_id")
if info:
    print(f"Success: {info['title']}")
else:
    print("Failed to extract video information")

# For batch processing, check individual results
results = get_video_info_batch(["valid_id", "invalid_id"])
for result in results:
    if result.get('error'):
        print(f"Error: {result['error']}")
    else:
        print(f"Success: {result['title']}")
```

## Legal and Compliance Notes

- **YouTube Data API v3**: Fully compliant with YouTube's Terms of Service
- **yt-dlp and pytubefix**: Violate YouTube's Terms of Service by scraping data

For commercial applications or production use, always use the YouTube Data API v3.

## Contributing

1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests for new functionality
5. Submit a pull request

## License

MIT License - see LICENSE file for details.

## Support

- Documentation: [GitHub README](https://github.com/sinjab/yt-info-extract)
- Issues: [GitHub Issues](https://github.com/sinjab/yt-info-extract/issues)
- API Key Setup: [Google Cloud Console](https://console.cloud.google.com/)

## Related Projects

- [yt-ts-extract](https://github.com/sinjab/yt-ts-extract) - YouTube transcript extraction
- [yt-dlp](https://github.com/yt-dlp/yt-dlp) - YouTube downloader (used as fallback)
- [pytubefix](https://github.com/JuanBindez/pytubefix) - YouTube library (used as fallback)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "yt-info-extract",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "api, automation, channel, cli, description, extract, information, metadata, title, video, views, youtube",
    "author": null,
    "author_email": "Khaldoon Sinjab <sinjab@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/e6/59/6927a9dde3b79a5758399b940dcaffd47bea693917aee7a306d2c3afc707/yt_info_extract-1.1.0.tar.gz",
    "platform": null,
    "description": "# YouTube Video Information Extractor\n\n[![CI](https://github.com/sinjab/yt_info_extract/workflows/CI/badge.svg)](https://github.com/sinjab/yt_info_extract/actions)\n[![PyPI version](https://badge.fury.io/py/yt-info-extract.svg)](https://badge.fury.io/py/yt-info-extract)\n[![Python Support](https://img.shields.io/pypi/pyversions/yt-info-extract.svg)](https://pypi.org/project/yt-info-extract/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Code Coverage](https://codecov.io/gh/sinjab/yt_info_extract/branch/main/graph/badge.svg)](https://codecov.io/gh/sinjab/yt_info_extract)\n[![Code Quality](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n\nA robust Python library for extracting YouTube video metadata including title, description, channel name, publication date, and view count with multiple extraction strategies.\n\n## Features\n\n- **Multiple Extraction Strategies**: YouTube Data API v3 (official), yt-dlp, pytubefix\n- **Automatic Fallback**: Seamlessly switches between methods if one fails\n- **Simple Input**: Accepts YouTube video IDs only (11 characters)\n- **Batch Processing**: Extract information from multiple videos efficiently\n- **Multiple Output Formats**: Text, JSON, CSV\n- **Command Line Interface**: Easy-to-use CLI for quick extractions\n- **Python Library**: Full programmatic access for integration\n- **Robust Error Handling**: Graceful handling of failures with retry logic\n- **Rate Limiting**: Built-in delays to respect YouTube's servers\n\n## Installation\n\n```bash\npip install yt-info-extract\n```\n\n### Optional Dependencies\n\nFor the best experience, install all extraction backends:\n\n```bash\n# For YouTube Data API v3 support (recommended)\npip install google-api-python-client\n\n# For yt-dlp support (most robust fallback)\npip install yt-dlp\n\n# For pytubefix support (lightweight fallback)\npip install pytubefix\n```\n\n## Quick Start\n\n### Python Library Usage\n\n```python\nfrom yt_info_extract import get_video_info\n\n# Extract video information\ninfo = get_video_info(\"jNQXAC9IVRw\")\n\nprint(f\"Title: {info['title']}\")\nprint(f\"Channel: {info['channel_name']}\")\nprint(f\"Views: {info['views']:,}\")\nprint(f\"Published: {info['publication_date']}\")\n```\n\n### Command Line Usage\n\n```bash\n# Extract video information\nyt-info jNQXAC9IVRw\n\n# Export to JSON\nyt-info -f json -o video.json jNQXAC9IVRw\n\n# Process multiple videos\nyt-info --batch video_ids.txt --output-dir results/\n\n# Use specific extraction strategy\nyt-info -s api --api-key YOUR_KEY jNQXAC9IVRw\n```\n\n## YouTube Data API v3 Setup (Recommended)\n\nThe YouTube Data API v3 is the official, most reliable method. It requires a free API key:\n\n1. Go to [Google Cloud Console](https://console.cloud.google.com/)\n2. Create a new project or select an existing one\n3. Enable the YouTube Data API v3\n4. Create credentials (API Key)\n5. Restrict the API key to YouTube Data API v3\n\n```bash\n# Set your API key as environment variable\nexport YOUTUBE_API_KEY=\"your_api_key_here\"\n\n# Now use the library\nyt-info jNQXAC9IVRw\n```\n\n## Usage Examples\n\n### Basic Usage\n\n```python\nfrom yt_info_extract import YouTubeVideoInfoExtractor\n\n# Initialize extractor\nextractor = YouTubeVideoInfoExtractor(api_key=\"your_key\")\n\n# Extract video info\ninfo = extractor.get_video_info(\"jNQXAC9IVRw\")\n\nif info:\n    print(f\"Title: {info['title']}\")\n    print(f\"Channel: {info['channel_name']}\")\n    print(f\"Views: {info['views']:,}\")\n    print(f\"Published: {info['publication_date']}\")\n    print(f\"Description: {info['description'][:100]}...\")\n```\n\n### Batch Processing\n\n```python\nfrom yt_info_extract import get_video_info_batch\n\nvideo_ids = [\"jNQXAC9IVRw\", \"dQw4w9WgXcQ\", \"_OBlgSz8sSM\"]\nresults = get_video_info_batch(video_ids)\n\nfor result in results:\n    if not result.get('error'):\n        print(f\"{result['title']} - {result['views']:,} views\")\n```\n\n### Export Data\n\n```python\nfrom yt_info_extract import get_video_info, export_video_info\n\n# Get video info\ninfo = get_video_info(\"jNQXAC9IVRw\")\n\n# Export to JSON\nexport_video_info(info, \"video.json\")\n\n# Export batch results to CSV\nbatch_results = get_video_info_batch([\"jNQXAC9IVRw\", \"dQw4w9WgXcQ\"])\nexport_video_info(batch_results, \"videos.csv\", format_type=\"csv\")\n```\n\n### Video ID Format\n\n```python\nfrom yt_info_extract import get_video_info\n\n# Only video IDs are accepted (11 characters: A-Z, a-z, 0-9, _, -):\nvideo_id = \"jNQXAC9IVRw\"\ninfo = get_video_info(video_id)\nprint(f\"\u2713 {video_id} -> {info['title']}\")\n\n# URLs are NOT supported - extract the video ID manually if needed:\n# https://www.youtube.com/watch?v=jNQXAC9IVRw -> jNQXAC9IVRw\n```\n\n## Command Line Interface\n\n### Basic Commands\n\n```bash\n# Extract video information\nyt-info jNQXAC9IVRw\n\n# Use different output formats\nyt-info -f compact jNQXAC9IVRw\nyt-info -f stats jNQXAC9IVRw\nyt-info -f json jNQXAC9IVRw\n\n# Export to file\nyt-info -f json -o video.json jNQXAC9IVRw\nyt-info -f csv -o video.csv jNQXAC9IVRw\n```\n\n### Batch Processing\n\n```bash\n# Create a file with video IDs only (one per line)\necho \"jNQXAC9IVRw\" > video_ids.txt\necho \"dQw4w9WgXcQ\" >> video_ids.txt\n\n# Process all videos\nyt-info --batch video_ids.txt --output-dir results/\n\n# With summary report\nyt-info --batch video_ids.txt --summary --output-dir results/\n```\n\n### API Key Usage\n\n```bash\n# Method 1: Environment variable\nexport YOUTUBE_API_KEY=\"your_api_key_here\"\nyt-info jNQXAC9IVRw\n\n# Method 2: Command line argument\nyt-info --api-key \"your_api_key_here\" jNQXAC9IVRw\n\n# Force specific strategy\nyt-info -s api --api-key \"your_key\" jNQXAC9IVRw\nyt-info -s yt_dlp jNQXAC9IVRw\n```\n\n### Utility Commands\n\n```bash\n# Test API key\nyt-info --test-api\n\n# List available strategies\nyt-info --list-strategies\n\n# Verbose output\nyt-info -v jNQXAC9IVRw\n```\n\n## Extraction Strategies\n\n### 1. YouTube Data API v3 (Recommended)\n\n- **Pros**: Official, reliable, comprehensive data, compliant with ToS\n- **Cons**: Requires API key, has quota limits (10,000 units/day free)\n- **Best for**: Production applications, commercial use, reliable automation\n\n```python\nextractor = YouTubeVideoInfoExtractor(api_key=\"your_key\", strategy=\"api\")\n```\n\n### 2. yt-dlp (Most Robust Fallback)\n\n- **Pros**: No API key needed, very robust, actively maintained\n- **Cons**: Violates YouTube ToS, can break with YouTube updates\n- **Best for**: Personal projects, research, when API quotas are insufficient\n\n```python\nextractor = YouTubeVideoInfoExtractor(strategy=\"yt_dlp\")\n```\n\n### 3. pytubefix (Lightweight Fallback)\n\n- **Pros**: No API key needed, simple, lightweight\n- **Cons**: Violates YouTube ToS, less robust than yt-dlp\n- **Best for**: Simple scripts, minimal dependencies\n\n```python\nextractor = YouTubeVideoInfoExtractor(strategy=\"pytubefix\")\n```\n\n### 4. Auto Strategy (Default)\n\nAutomatically tries strategies in order of preference:\n1. YouTube Data API v3 (if API key available)\n2. yt-dlp (if installed)\n3. pytubefix (if installed)\n\n```python\nextractor = YouTubeVideoInfoExtractor(strategy=\"auto\")  # Default\n```\n\n## Data Structure\n\nEach video information dictionary contains:\n\n```python\n{\n    \"title\": \"Video title\",\n    \"description\": \"Full video description\",\n    \"channel_name\": \"Channel name\",\n    \"publication_date\": \"2005-04-23T00:00:00Z\",  # ISO format\n    \"views\": 123456789,  # Integer view count\n    \"extraction_method\": \"youtube_api\"  # Method used\n}\n```\n\n## Configuration Options\n\n```python\nextractor = YouTubeVideoInfoExtractor(\n    api_key=\"your_key\",           # YouTube Data API key\n    strategy=\"auto\",              # Extraction strategy\n    timeout=30,                   # Request timeout (seconds)\n    max_retries=3,                # Maximum retry attempts\n    backoff_factor=0.75,          # Exponential backoff factor\n    rate_limit_delay=0.1,         # Delay between requests\n)\n```\n\n## Error Handling\n\nThe library handles errors gracefully:\n\n```python\ninfo = get_video_info(\"invalid_video_id\")\nif info:\n    print(f\"Success: {info['title']}\")\nelse:\n    print(\"Failed to extract video information\")\n\n# For batch processing, check individual results\nresults = get_video_info_batch([\"valid_id\", \"invalid_id\"])\nfor result in results:\n    if result.get('error'):\n        print(f\"Error: {result['error']}\")\n    else:\n        print(f\"Success: {result['title']}\")\n```\n\n## Legal and Compliance Notes\n\n- **YouTube Data API v3**: Fully compliant with YouTube's Terms of Service\n- **yt-dlp and pytubefix**: Violate YouTube's Terms of Service by scraping data\n\nFor commercial applications or production use, always use the YouTube Data API v3.\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests for new functionality\n5. Submit a pull request\n\n## License\n\nMIT License - see LICENSE file for details.\n\n## Support\n\n- Documentation: [GitHub README](https://github.com/sinjab/yt-info-extract)\n- Issues: [GitHub Issues](https://github.com/sinjab/yt-info-extract/issues)\n- API Key Setup: [Google Cloud Console](https://console.cloud.google.com/)\n\n## Related Projects\n\n- [yt-ts-extract](https://github.com/sinjab/yt-ts-extract) - YouTube transcript extraction\n- [yt-dlp](https://github.com/yt-dlp/yt-dlp) - YouTube downloader (used as fallback)\n- [pytubefix](https://github.com/JuanBindez/pytubefix) - YouTube library (used as fallback)\n",
    "bugtrack_url": null,
    "license": "MIT License\n        \n        Copyright (c) 2025 Khaldoon Sinjab\n        \n        Permission is hereby granted, free of charge, to any person obtaining a copy\n        of this software and associated documentation files (the \"Software\"), to deal\n        in the Software without restriction, including without limitation the rights\n        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n        copies of the Software, and to permit persons to whom the Software is\n        furnished to do so, subject to the following conditions:\n        \n        The above copyright notice and this permission notice shall be included in all\n        copies or substantial portions of the Software.\n        \n        THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n        SOFTWARE.",
    "summary": "Extract video information from YouTube videos including title, description, channel name, publication date and views",
    "version": "1.1.0",
    "project_urls": {
        "Documentation": "https://github.com/sinjab/yt-info-extract#readme",
        "Homepage": "https://github.com/sinjab/yt-info-extract",
        "Issues": "https://github.com/sinjab/yt-info-extract/issues",
        "Repository": "https://github.com/sinjab/yt-info-extract"
    },
    "split_keywords": [
        "api",
        " automation",
        " channel",
        " cli",
        " description",
        " extract",
        " information",
        " metadata",
        " title",
        " video",
        " views",
        " youtube"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a791daf20e0432fac4f8f950df67e080f0f9f73588f2d4da2839d3c7cd63b290",
                "md5": "8040c13d36d70b4ad644558ef46258b5",
                "sha256": "a1b9ad12db0aa242a2523b6a5204a382fe5361f004f9f56c873efc5c166e2c8c"
            },
            "downloads": -1,
            "filename": "yt_info_extract-1.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8040c13d36d70b4ad644558ef46258b5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 18447,
            "upload_time": "2025-09-03T09:29:29",
            "upload_time_iso_8601": "2025-09-03T09:29:29.653593Z",
            "url": "https://files.pythonhosted.org/packages/a7/91/daf20e0432fac4f8f950df67e080f0f9f73588f2d4da2839d3c7cd63b290/yt_info_extract-1.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e6596927a9dde3b79a5758399b940dcaffd47bea693917aee7a306d2c3afc707",
                "md5": "587875a4776c84385639b1905360e1b7",
                "sha256": "8a507dbf4717a77abf4bd07e143ef147dda28722b8f2f149775346d684d8683d"
            },
            "downloads": -1,
            "filename": "yt_info_extract-1.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "587875a4776c84385639b1905360e1b7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 38153,
            "upload_time": "2025-09-03T09:29:30",
            "upload_time_iso_8601": "2025-09-03T09:29:30.877515Z",
            "url": "https://files.pythonhosted.org/packages/e6/59/6927a9dde3b79a5758399b940dcaffd47bea693917aee7a306d2c3afc707/yt_info_extract-1.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-03 09:29:30",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sinjab",
    "github_project": "yt-info-extract#readme",
    "github_not_found": true,
    "lcname": "yt-info-extract"
}
        
Elapsed time: 0.93517s