Releases: kaya70875/ytfetcher
v1.4.1
What's New
Fix
- Fixed an issue where running the CLI with
from_video_idswould fail with a KeyError: 'url' if theyt_dlpresult for a video did not include a url key by @vabe44
Upgrade
Don't forget to upgrade ytfetcher
pip install --upgrade ytfetcher
Contribute
Found a bug or have an idea? Open an issue
v1.4
What's New
Fetching Only Manually Created Transcripts
You can now fetch only manually created transcripts with ytfetcher which allows you to get more precise transcripts. (Closes #2)
This feature could be used channels like TEDx which has more manually created transcripts.
Here how you can use it:
Python API
fetcher = YTFetcher.from_channel(channel_handle="TEDx", manually_created=True)CLI Usage
ytfetcher from_channel -c TEDx -m 50 --manually-createdFixed Transcript Cleaner Method
Transcript cleaner method wasn't removing >> signs correctly from transcripts. We fixed that.
Upgrade
Don't forget to upgrade ytfetcher
pip install --upgrade ytfetcherContribute
Found a bug or have an idea? Open an issue
v1.3.1
What's New
Fetch From Playlist ID
You can now fetch bulk videos from a playlist id using from_playlist_id method in both CLI and Python API:
Note: YTFetcher fetches up to 50 videos by default.
To fetch all videos from a playlist with more than 50 videos, set max_results to the total number of videos in that playlist.
We are planning to find a better solution for this in the future.
Using CLI
ytfetcher from_playlist_id -p playlistid123 -m 20Using Python API
fetcher = YTFetcher.from_playlist_id(playlist_id="playlistid123")Better Exporter
- Exporter now exports all available data as default.
- Added
--metadataargument forCLIto choose desired metadata. - You can also exclude
timingsfromtranscriptsusing--no-timingargument in CLI.
This update improves exporter especially in CLI side. Here couple of examples how you can use these new arguments:
Filtering Metadata
ytfetcher from_playlist_id -p playlistid123 --metadata title descriptionExcluding Timings From Transcripts
ytfetcher from_channel -c TheOffice --no-timingsAccepting Full URL
ytfetcher now can accept full urls for channel_handle and playlist_id parameters.
You can now input full url's like:
- https://www.youtube.com/@TheOffice for
channel_handle - https://www.youtube.com/playlist?list=PLuvRKGApO-zoF2WBPN2kW188YLke0Igv8 for
playlist_id
Full URL is not supported for from_video_ids method right now so you still have to provide exact video id's for it.
Trim @ Character
İf you accidently write channel handle with @ included, ytfetcher now fixes that for you. So now you can also write:
ytfetcher from_channel -c @TheOffice -m 20Upgrade
Don't forget to upgrade ytfetcher
pip install --upgrade ytfetcherContribute
Found a bug or have an idea? Open an issue
v1.2
What’s New
The latest update focuses on improving your CLI experience, language handling, and developer feedback through better logging and output visibility. Here’s what’s new:
Progressive CLI outputs
- Added progressive print statements for CLI for better feedback.
You can now see progress information directly in the CLI, making the process more interactive and transparent. (Closes #1)
[INFO] Fetching transcripts from channel: TheOffice
[INFO] Fetching transcripts: 25%|
[DONE] Fetched all transcripts.
[DONE] Data exported successfully as jsonChoose Your Desired Transcript Language
- You can now choose your transcript's language.
For example if you want to fetch transcripts turkish as first option with CLI:
ytfetcher from_channel -c caseoh_ -m 20 --languages tr enFor Python API:
fetcher = YTFetcher.from_channel(channel_handle='caseoh_', languages=['tr', 'en'])ytfetcher first try to fetch turkish language if available, otherwise falls back to english.
Better Logging
- Improved logging across critical modules for easier debugging and better insight into internal operations.
Enable basic logging for the Python API with:
import logging
from ytfetcher.config import enable_default_config
enable_default_config(level=logging.DEBUG) # or initialize empty for INFOUpgrade
Don't forget to upgrade ytfetcher
pip install --upgrade ytfetcherContribute
Found a bug or have an idea? Open an issue
v1.1
This release brings important usability improvements, transcript cleaning, and the launch of our official docs site.
🚀 What’s New
-
Progress Bar Support
Added progress bar to from_video_ids method for YoutubeDL, making it easier to track bulk downloads. -
Console Output Option
Added print argument to allow users to print fetched data directly to the console. -
Cleaner Transcripts
TranscriptFetcher now automatically removes filler labels like [Music], [Applause], etc. -
Official Documentation Website
📚 Explore the new docs
🔧 Upgrade
pip install --upgrade ytfetcher❤️ Contribute
Found a bug or have an idea? Open an issue
or try a good first issue