yt-dlp API reference
119 public APIs from yt-dlp (yt-dlp/yt-dlp) — 68 classes, 25 functions, 26 methods. Signatures extracted by static analysis of the actual source.
Repository: yt-dlp/yt-dlp
| Kind | Count |
|---|---|
| Classes | 68 |
| Functions | 25 |
| Methods | 26 |
API list
func
bundle.pyinstaller.exe(onedir)@returns (name, path)
class
yt_dlp.YoutubeDL.YoutubeDLYoutubeDL class.
method
yt_dlp.YoutubeDL.YoutubeDL.add_post_hook(ph)Add the post hook
method
yt_dlp.YoutubeDL.YoutubeDL.add_progress_hook(ph)Add the download progress hook
method
yt_dlp.YoutubeDL.YoutubeDL.cookiejar()Global cookiejar instance
method
yt_dlp.YoutubeDL.YoutubeDL.download(url_list)Download a given list of URLs.
method
yt_dlp.YoutubeDL.YoutubeDL.prepare_filename(info_dict, dir_type='', *outtmpl=None, *warn=False)Generate the output filename
method
yt_dlp.YoutubeDL.YoutubeDL.process_info(info_dict)Process a single resolved IE result.
method
yt_dlp.YoutubeDL.YoutubeDL.proxies()Global proxy configuration
method
yt_dlp.YoutubeDL.YoutubeDL.to_stderr(message, only_once=False)Print message to stderr
method
yt_dlp.YoutubeDL.YoutubeDL.to_stdout(message, skip_eol=False, quiet=None)Print message to stdout
method
yt_dlp.YoutubeDL.YoutubeDL.urlopen(req)Start an HTTP download
method
yt_dlp.YoutubeDL.YoutubeDL.validate_outtmpl(outtmpl)@return None or Exception object
func
yt_dlp.aes.aes_ecb_encrypt(data, key, iv=None)Encrypt with aes in ECB mode.
class
yt_dlp.cookies.LenientSimpleCookieMore lenient version of http.cookies.SimpleCookie
class
yt_dlp.cookies.YoutubeDLCookieJarSee [1] for cookie file format.
method
yt_dlp.cookies.YoutubeDLCookieJar.load(filename=None, ignore_discard=True, ignore_expires=True)Load cookies from a file.
method
yt_dlp.cookies.YoutubeDLCookieJar.save(filename=None, ignore_discard=True, ignore_expires=True)Save cookies to a file.
class
yt_dlp.downloader.common.FileDownloaderFile Downloader class.
method
yt_dlp.downloader.common.FileDownloader.real_download(filename, info_dict)Real download process.
method
yt_dlp.downloader.common.FileDownloader.report_destination(filename)Report destination filename.
method
yt_dlp.downloader.common.FileDownloader.report_retry(err, count, retries, frag_index=NO_DEFAULT, fatal=True)Report retry
class
yt_dlp.downloader.dash.DashSegmentsFDDownload segments in a DASH manifest.
class
yt_dlp.downloader.f4m.F4mFDA downloader for f4m manifests or AdobeHDS.
func
yt_dlp.downloader.f4m.write_flv_header(stream)Writes the FLV header to stream
class
yt_dlp.downloader.fc2.FC2LiveFDDownloads FC2 live without being stopped.
class
yt_dlp.downloader.fragment.FragmentFDA base file downloader class for fragmented media (e.g.
class
yt_dlp.downloader.hls.HlsFDDownload segments in a m3u8 manifest.
class
yt_dlp.downloader.ism.IsmFDDownload segments in a ISM manifest
class
yt_dlp.downloader.niconico.NiconicoLiveFDDownloads niconico live without being stopped
class
yt_dlp.downloader.websocket.FFmpegSinkFDA sink to ffmpeg for downloading fragments in any form
method
yt_dlp.downloader.websocket.FFmpegSinkFD.real_connection(sink, info_dict)Override this in subclasses
class
yt_dlp.downloader.youtube_live_chat.YoutubeLiveChatFDDownloads YouTube live chats fragment by fragment
class
yt_dlp.extractor.applepodcasts.AppleBaseIESubclasses must set _BASE_URL and _JWT_KEY_ID
class
yt_dlp.extractor.common.InfoExtractorInformation Extractor class.
method
yt_dlp.extractor.common.InfoExtractor.age_limit()Get age limit from the testcases
method
yt_dlp.extractor.common.InfoExtractor.report_age_confirmation()Report attempt to confirm age.
method
yt_dlp.extractor.common.InfoExtractor.report_download_webpage(video_id, *note=None)Report webpage download.
method
yt_dlp.extractor.common.InfoExtractor.report_extraction(id_or_name)Report information extraction.
method
yt_dlp.extractor.common.InfoExtractor.report_login()Report attempt to log in.
method
yt_dlp.extractor.common.InfoExtractor.working()Getter method for _WORKING.
class
yt_dlp.extractor.common.SearchInfoExtractorBase class for paged search queries extractors.
class
yt_dlp.extractor.dplay.DiscoveryPlusBaseIESubclasses must set _PRODUCT, _DISCO_API_PARAMS
class
yt_dlp.extractor.floatplane.FloatplaneChannelBaseIESubclasses must set _RESULT_IE, _BASE_URL and _PAGE_SIZE
func
yt_dlp.extractor.gen_extractor_classes()Return a list of supported extractors.
class
yt_dlp.extractor.goplay.AuthenticationExceptionSomething went wrong while logging in
class
yt_dlp.extractor.goplay.AwsIdpAWS Identity Provider
class
yt_dlp.extractor.goplay.InvalidLoginExceptionThe login credentials are invalid
class
yt_dlp.extractor.openload.PhantomJSwrapperPhantomJS wrapper class This class is experimental.
class
yt_dlp.extractor.radiofrance.RadioFrancePlaylistBaseIESubclasses must set _METADATA_KEY
class
yt_dlp.extractor.testurl.TestURLIEAllows addressing of the test cases as test:yout.*be_1
class
yt_dlp.extractor.vimeo.VimeoIEInformation extractor for vimeo.com.
class
yt_dlp.extractor.volejtv.VolejTVPlaylistBaseIESubclasses must set _API_FILTER, _PAGE_SIZE
class
yt_dlp.extractor.youtube._base.YoutubeBaseInfoExtractorProvide base functions for Youtube extractors
class
yt_dlp.extractor.youtube.jsc.provider.JsChallengeProviderErrorAn error occurred while solving the challenge
func
yt_dlp.extractor.youtube.jsc.provider.register_provider(provider:type[JsChallengeProvider])Register a JsChallengeProvider class
class
yt_dlp.extractor.youtube.pot.cache.PoTokenCacheProviderErrorAn error occurred while fetching a PO Token
func
yt_dlp.extractor.youtube.pot.cache.register_provider(provider:type[PoTokenCacheProvider])Register a PoTokenCacheProvider class
class
yt_dlp.extractor.youtube.pot.provider.PoTokenProviderErrorAn error occurred while fetching a PO Token
func
yt_dlp.extractor.youtube.pot.provider.register_preference(*providers:type[PoTokenProvider]) -> typing.Callable[[Preference], Preference]Register a preference for a PoTokenProvider
func
yt_dlp.extractor.youtube.pot.provider.register_provider(provider:type[PoTokenProvider])Register a PoTokenProvider class
func
yt_dlp.networking._helper.get_redirect_method(method, status)Unified redirect method handling
class
yt_dlp.networking._requests.RequestsRHRequests RequestHandler https://github.com/psf/requests
class
yt_dlp.networking._requests.Urllib3LoggingHandlerRedirect urllib3 logs to our logger
class
yt_dlp.networking._urllib.HTTPHandlerHandler for HTTP requests and responses.
class
yt_dlp.networking.common.RequestRepresents a request to be made.
class
yt_dlp.networking.common.ResponseBase class for HTTP response adapters.
method
yt_dlp.networking.common.Response.get_header(name, default=None)Get header for name.
func
yt_dlp.networking.common.register_rh(handler)Register a RequestHandler class
class
yt_dlp.networking.exceptions.CertificateVerifyErrorRaised when certificate validated has failed
class
yt_dlp.networking.exceptions.TransportErrorNetwork related errors
class
yt_dlp.networking.exceptions.UnsupportedRequestraised when a handler cannot handle a request
class
yt_dlp.networking.impersonate.ImpersonateTargetA target for browser impersonation.
class
yt_dlp.plugins.PluginFinderThis class provides one or multiple namespace packages.
class
yt_dlp.plugins.PluginLoaderDummy loader for virtual namespace packages
class
yt_dlp.postprocessor.common.PostProcessorPost Processor class.
method
yt_dlp.postprocessor.common.PostProcessor.run(information)Run the PostProcessor.
func
yt_dlp.utils._legacy.platform_name()Returns the platform name as a str
class
yt_dlp.utils._utils.ContentTooShortErrorContent Too Short exception.
class
yt_dlp.utils._utils.DateRangeRepresents a time interval between two dates
class
yt_dlp.utils._utils.DownloadCancelledException raised when the download queue should be interrupted
class
yt_dlp.utils._utils.DownloadErrorDownload Error exception.
class
yt_dlp.utils._utils.EntryNotInPlaylistEntry not in playlist exception.
class
yt_dlp.utils._utils.ExistingVideoReached--break-on-existing triggered
class
yt_dlp.utils._utils.ExtractorErrorError during info extraction.
class
yt_dlp.utils._utils.GeoRestrictedErrorGeographic restriction Error exception.
class
yt_dlp.utils._utils.InAdvancePagedListPagedList with total number of pages known in advance
method
yt_dlp.utils._utils.LazyList.exhaust()Evaluate the entire iterable
class
yt_dlp.utils._utils.MaxDownloadsReached--max-downloads limit has been reached.
class
yt_dlp.utils._utils.NamespaceImmutable namespace
class
yt_dlp.utils._utils.OnDemandPagedListDownload pages until a page with less than maximum results
class
yt_dlp.utils._utils.PostProcessingErrorPost Processing exception.
class
yt_dlp.utils._utils.ReExtractInfoVideo info needs to be re-extracted.
class
yt_dlp.utils._utils.RegexNotFoundErrorError when a regex didn't match
class
yt_dlp.utils._utils.RejectedVideoReached--break-match-filter triggered
class
yt_dlp.utils._utils.RetryManagerUsage: for retry in RetryManager(...): try: ...
class
yt_dlp.utils._utils.SameFileErrorSame File exception.
class
yt_dlp.utils._utils.ThrottledDownloadDownload speed below --throttled-rate.
class
yt_dlp.utils._utils.UnavailableVideoErrorUnavailable Format exception.
class
yt_dlp.utils._utils.UserNotLiveError when a channel/user is not live
class
yt_dlp.utils._utils.YoutubeDLErrorBase exception for YoutubeDL errors.
func
yt_dlp.utils._utils.cached_method(f)Cache a method
class
yt_dlp.utils._utils.classpropertyproperty access for class methods with optional caching
func
yt_dlp.utils._utils.decode_base_n(string, n=None, table=None)Convert given base-n string to int
func
yt_dlp.utils._utils.encode_base_n(num, n=None, table=None)Convert given int to a base-n string
func
yt_dlp.utils._utils.expand_path(s)Expand shell variables and ~
func
yt_dlp.utils._utils.find_xpath_attr(node, xpath, key, val=None)Find the xpath xpath[@key=val]
func
yt_dlp.utils._utils.fix_xml_ampersands(xml_str)Replace all the '&' by '&' in XML
func
yt_dlp.utils._utils.frange(start=0, stop=None, step=1)Float range
func
yt_dlp.utils._utils.get_windows_version()Get Windows version.
func
yt_dlp.utils._utils.limit_length(s, length)Add ellipses to overly long strings
func
yt_dlp.utils._utils.ohdave_rsa_encrypt(data, exponent, modulus)Implement OHDave's RSA algorithm.
func
yt_dlp.utils._utils.preferredencoding()Get preferred encoding.
func
yt_dlp.utils._utils.str_to_int(int_str)A more relaxed version of int_or_none
func
yt_dlp.utils._utils.ytdl_is_updateable()Returns if yt-dlp can be updated with -U
class
yt_dlp.utils.networking.HTTPHeaderDictStore and access keys case-insensitively.
func
yt_dlp.utils.networking.normalize_url(url)Normalize URL as suggested by RFC 3986
class
yt_dlp.webvtt.BlockAn abstract WebVTT block.
class
yt_dlp.webvtt.CueBlockA cue block.
About this data
These signatures were extracted from the public source of yt-dlp/yt-dlp
using Python's ast module. Argument names, default values,
type annotations and return types are taken verbatim from the code.
Implementation bodies are never stored. See
how it works for details.