youtube-downloader / README.md
prasanth.thangavel
Update readme .env file details
b086139
|
raw
history blame
2.05 kB
---
title: Youtube Downloader
emoji: 🦀
colorFrom: pink
colorTo: gray
sdk: gradio
sdk_version: 5.9.1
python_version: 3.11.5
app_file: app.py
pinned: false
---
# <span style='display: flex; align-items: center; gap: 10px;'><img src='https://cdn-icons-png.flaticon.com/512/1384/1384060.png' width='25'/> <img src='https://upload.wikimedia.org/wikipedia/commons/thumb/6/6a/Youtube_Music_icon.svg/2048px-Youtube_Music_icon.svg.png' width='25'/>YouTube Downloader</span>
This application uses
- [`yt_dlp`](https://github.com/yt-dlp/yt-dlp) - For downloading Audio/Video from YouTube and YoutTube Music.
- HF [`gradio`](https://www.gradio.app/) - For UI.
## Cookies setup details
*Note: This setup is only needed if running in hugging face (HF) spaces to avoid bot related errors*.
1. **Download the YouTube Cookies**
- Follow the instruction provided [here](https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies) to download the YouTube cookies.
- Rename the downloaded cookie as `cookies.firefox-private.txt` and place it in the current working directory
2. **Convert cookie file content to `.env` file**
- Simple copy paste will not work due to special characters
- So, we will use the `cookies_to_env` function.
- Uncomment the `# Convert cookie file to env and save locally` section and run the code
- Remember to comment the code once the `.env` file is updated.
3. **Set up or Update the Secrets in HF**
- Copy the the `.env` content (only the value, and not the key) and paste it inside the Secrets (Private) > `FIREFOX_COOKIES` in Hugging Face space.
4. **Deploy the changes to HF space, and Voila!**
## `.env` file structure
```
FIREFOX_COOKIES="<Formatted_Cookie_Content_Goes_Here>"
USE_FIREFOX_COOKIES="False" # Set to "True" to use cookies
```
## Additional resources
- Check out the configuration (and README metadata) reference [here](https://huggingface.co/docs/hub/spaces-config-reference)
## Potential Improvements
- [ ] Making the code async.
- [ ] Add support for playlists.