{"id":22208986,"url":"https://github.com/heyfoz/python-youtube-transcription","last_synced_at":"2025-07-03T05:05:10.542Z","repository":{"id":241877588,"uuid":"805183393","full_name":"heyfoz/python-youtube-transcription","owner":"heyfoz","description":"This repository contains Python scripts and a local Flask web application for transcribing YouTube videos using various methods. It includes functionalities to retrieve video transcripts using the YouTube Data API, download audio from YouTube videos, and convert audio to text using speech recognition.","archived":false,"fork":false,"pushed_at":"2024-09-29T02:45:19.000Z","size":32,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T02:25:19.460Z","etag":null,"topics":["accessibility","api","audio","captions","python","speech-recognition","speech-to-text","subtitles","webvtt","youtube","youtube-audio","youtube-audio-downloader"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/heyfoz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-24T03:48:20.000Z","updated_at":"2025-03-08T10:26:59.000Z","dependencies_parsed_at":"2024-05-30T13:21:06.534Z","dependency_job_id":null,"html_url":"https://github.com/heyfoz/python-youtube-transcription","commit_stats":null,"previous_names":["ffm5113/python_youtube_transcription","heyfoz/python-youtube-transcription"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/heyfoz/python-youtube-transcription","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heyfoz%2Fpython-youtube-transcription","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heyfoz%2Fpython-youtube-transcription/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heyfoz%2Fpython-youtube-transcription/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heyfoz%2Fpython-youtube-transcription/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/heyfoz","download_url":"https://codeload.github.com/heyfoz/python-youtube-transcription/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heyfoz%2Fpython-youtube-transcription/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263264645,"owners_count":23439256,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["accessibility","api","audio","captions","python","speech-recognition","speech-to-text","subtitles","webvtt","youtube","youtube-audio","youtube-audio-downloader"],"created_at":"2024-12-02T19:28:10.648Z","updated_at":"2025-07-03T05:05:10.515Z","avatar_url":"https://github.com/heyfoz.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Python YouTube Transcription\n\nThis repository contains Python scripts and a local Flask web application for transcribing YouTube videos using various methods. It includes functionalities to retrieve video transcripts using the YouTube Data API, download audio from YouTube videos, and convert audio to text using speech recognition.\n\n## Features\n\n- **get_youtube_captions.py**: Contains functions to retrieve YouTube video caption transcripts using the YouTube Data API.\n- **youtube_speech_recognition.py**: Provides functionality to download audio from YouTube videos for transcription.\n- **download_youtube_audio.py**: Script to download YouTube audio and save it with a timestamp-based filename.\n- **index.html**: HTML template for the Flask web application UI to transcribe YouTube videos.\n\n## Installation\n\n1. Clone the repository:\n\n    ```bash\n    git clone https://github.com/heyfoz/python-youtube-transcription.git\n    ```\n\n2. Install the required libraries:\n\n    ```bash\n    pip install Flask google-api-python-client pytube pydub SpeechRecognition\n    ```\n\n## Usage\n\n1. Ensure you have set up your Google API key and environment variable as specified in `get_youtube_captions.py`.\n2. Run the desired Flask application (`get_youtube_captions.py`, or `youtube_speech_recognition.py`).\n3. Open your web browser and navigate to `http://localhost:5000` to access the web application.\n4. Enter a YouTube video URL and choose the desired transcription option.\n5. Optionally, use `get_youtube_captions.py` to download a .wav file to the project directory.\n\n## Documentation\n\n- [YouTube Data API Documentation](https://developers.google.com/youtube/v3/docs)\n- [pytube Documentation](https://pytube.io/en/latest/)\n- [pydub Documentation](https://github.com/jiaaro/pydub#documentation)\n- [SpeechRecognition Documentation](https://github.com/Uberi/speech_recognition#readme)\n\n## Note\n\n- The `index.html` file can be used with any of the Flask scripts mentioned above.\n- There are some limitations on YouTube regarding audio availability based on intellectual property concerns and user configurations. Some videos may not be accessible for transcription.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheyfoz%2Fpython-youtube-transcription","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fheyfoz%2Fpython-youtube-transcription","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheyfoz%2Fpython-youtube-transcription/lists"}