SYMBOL INDEX (226 symbols across 11 files) FILE: youtube_transcript_api/__main__.py function main (line 8) | def main(): FILE: youtube_transcript_api/_api.py class YouTubeTranscriptApi (line 12) | class YouTubeTranscriptApi: method __init__ (line 13) | def __init__( method fetch (line 51) | def fetch( method list (line 76) | def list( FILE: youtube_transcript_api/_cli.py class YouTubeTranscriptCli (line 11) | class YouTubeTranscriptCli: method __init__ (line 12) | def __init__(self, args: List[str]): method run (line 15) | def run(self) -> str: method _fetch_transcript (line 74) | def _fetch_transcript( method _get_version (line 95) | def _get_version(self): method _parse_args (line 101) | def _parse_args(self): method _sanitize_video_ids (line 201) | def _sanitize_video_ids(self, args): FILE: youtube_transcript_api/_errors.py class YouTubeTranscriptApiException (line 10) | class YouTubeTranscriptApiException(Exception): class CookieError (line 14) | class CookieError(YouTubeTranscriptApiException): class CookiePathInvalid (line 18) | class CookiePathInvalid(CookieError): method __init__ (line 19) | def __init__( class CookieInvalid (line 25) | class CookieInvalid(CookieError): method __init__ (line 26) | def __init__( class CouldNotRetrieveTranscript (line 34) | class CouldNotRetrieveTranscript(YouTubeTranscriptApiException): method __init__ (line 51) | def __init__(self, video_id: str): method _build_error_message (line 55) | def _build_error_message(self) -> str: method cause (line 69) | def cause(self) -> str: method __str__ (line 72) | def __str__(self) -> str: class YouTubeDataUnparsable (line 76) | class YouTubeDataUnparsable(CouldNotRetrieveTranscript): class YouTubeRequestFailed (line 83) | class YouTubeRequestFailed(CouldNotRetrieveTranscript): method __init__ (line 86) | def __init__(self, video_id: str, http_error: HTTPError): method cause (line 91) | def cause(self) -> str: class VideoUnplayable (line 97) | class VideoUnplayable(CouldNotRetrieveTranscript): method __init__ (line 101) | def __init__(self, video_id: str, reason: Optional[str], sub_reasons: ... method cause (line 107) | def cause(self): class VideoUnavailable (line 119) | class VideoUnavailable(CouldNotRetrieveTranscript): class InvalidVideoId (line 123) | class InvalidVideoId(CouldNotRetrieveTranscript): class RequestBlocked (line 131) | class RequestBlocked(CouldNotRetrieveTranscript): method __init__ (line 182) | def __init__(self, video_id: str): method with_proxy_config (line 186) | def with_proxy_config( method cause (line 193) | def cause(self) -> str: class IpBlocked (line 201) | class IpBlocked(RequestBlocked): class TranscriptsDisabled (line 211) | class TranscriptsDisabled(CouldNotRetrieveTranscript): class AgeRestricted (line 215) | class AgeRestricted(CouldNotRetrieveTranscript): class NotTranslatable (line 232) | class NotTranslatable(CouldNotRetrieveTranscript): class TranslationLanguageNotAvailable (line 236) | class TranslationLanguageNotAvailable(CouldNotRetrieveTranscript): class FailedToCreateConsentCookie (line 240) | class FailedToCreateConsentCookie(CouldNotRetrieveTranscript): class NoTranscriptFound (line 244) | class NoTranscriptFound(CouldNotRetrieveTranscript): method __init__ (line 250) | def __init__( method cause (line 261) | def cause(self) -> str: class PoTokenRequired (line 268) | class PoTokenRequired(CouldNotRetrieveTranscript): FILE: youtube_transcript_api/_transcripts.py class FetchedTranscriptSnippet (line 35) | class FetchedTranscriptSnippet: class FetchedTranscript (line 50) | class FetchedTranscript: method __iter__ (line 62) | def __iter__(self) -> Iterator[FetchedTranscriptSnippet]: method __getitem__ (line 65) | def __getitem__(self, index) -> FetchedTranscriptSnippet: method __len__ (line 68) | def __len__(self) -> int: method to_raw_data (line 71) | def to_raw_data(self) -> List[Dict]: class _TranslationLanguage (line 76) | class _TranslationLanguage: class _PlayabilityStatus (line 81) | class _PlayabilityStatus(str, Enum): class _PlayabilityFailedReason (line 87) | class _PlayabilityFailedReason(str, Enum): function _raise_http_errors (line 93) | def _raise_http_errors(response: Response, video_id: str) -> Response: class Transcript (line 103) | class Transcript: method __init__ (line 104) | def __init__( method fetch (line 130) | def fetch(self, preserve_formatting: bool = False) -> FetchedTranscript: method __str__ (line 149) | def __str__(self) -> str: method is_translatable (line 157) | def is_translatable(self) -> bool: method translate (line 160) | def translate(self, language_code: str) -> "Transcript": class TranscriptList (line 180) | class TranscriptList: method __init__ (line 186) | def __init__( method build (line 207) | def build( method __iter__ (line 252) | def __iter__(self) -> Iterator[Transcript]: method find_transcript (line 258) | def find_transcript(self, language_codes: Iterable[str]) -> Transcript: method find_generated_transcript (line 274) | def find_generated_transcript(self, language_codes: Iterable[str]) -> ... method find_manually_created_transcript (line 285) | def find_manually_created_transcript( method _find_transcript (line 300) | def _find_transcript( method __str__ (line 312) | def __str__(self) -> str: method _get_language_description (line 339) | def _get_language_description(self, transcript_strings: Iterable[str])... class TranscriptListFetcher (line 347) | class TranscriptListFetcher: method __init__ (line 348) | def __init__(self, http_client: Session, proxy_config: Optional[ProxyC... method fetch (line 352) | def fetch(self, video_id: str) -> TranscriptList: method _fetch_captions_json (line 359) | def _fetch_captions_json(self, video_id: str, try_number: int = 0) -> ... method _extract_innertube_api_key (line 375) | def _extract_innertube_api_key(self, html: str, video_id: str) -> str: method _extract_captions_json (line 384) | def _extract_captions_json(self, innertube_data: Dict, video_id: str) ... method _assert_playability (line 395) | def _assert_playability(self, playability_status_data: Dict, video_id:... method _create_consent_cookie (line 424) | def _create_consent_cookie(self, html: str, video_id: str) -> None: method _fetch_video_html (line 432) | def _fetch_video_html(self, video_id: str) -> str: method _fetch_html (line 441) | def _fetch_html(self, video_id: str) -> str: method _fetch_innertube_data (line 445) | def _fetch_innertube_data(self, video_id: str, api_key: str) -> Dict: class _TranscriptParser (line 457) | class _TranscriptParser: method __init__ (line 471) | def __init__(self, preserve_formatting: bool = False): method _get_html_regex (line 474) | def _get_html_regex(self, preserve_formatting: bool) -> Pattern[str]: method parse (line 483) | def parse(self, raw_data: str) -> List[FetchedTranscriptSnippet]: FILE: youtube_transcript_api/formatters.py class Formatter (line 9) | class Formatter: method format_transcript (line 17) | def format_transcript(self, transcript: FetchedTranscript, **kwargs) -... method format_transcripts (line 23) | def format_transcripts(self, transcripts: List[FetchedTranscript], **k... class PrettyPrintFormatter (line 30) | class PrettyPrintFormatter(Formatter): method format_transcript (line 31) | def format_transcript(self, transcript: FetchedTranscript, **kwargs) -... method format_transcripts (line 39) | def format_transcripts(self, transcripts: List[FetchedTranscript], **k... class JSONFormatter (line 50) | class JSONFormatter(Formatter): method format_transcript (line 51) | def format_transcript(self, transcript: FetchedTranscript, **kwargs) -... method format_transcripts (line 59) | def format_transcripts(self, transcripts: List[FetchedTranscript], **k... class TextFormatter (line 70) | class TextFormatter(Formatter): method format_transcript (line 71) | def format_transcript(self, transcript: FetchedTranscript, **kwargs) -... method format_transcripts (line 79) | def format_transcripts(self, transcripts: List[FetchedTranscript], **k... class _TextBasedFormatter (line 90) | class _TextBasedFormatter(TextFormatter): method _format_timestamp (line 91) | def _format_timestamp(self, hours: int, mins: int, secs: int, ms: int)... method _format_transcript_header (line 97) | def _format_transcript_header(self, lines: Iterable[str]) -> str: method _format_transcript_helper (line 103) | def _format_transcript_helper( method _seconds_to_timestamp (line 111) | def _seconds_to_timestamp(self, time: float) -> str: method format_transcript (line 130) | def format_transcript(self, transcript: FetchedTranscript, **kwargs) -... class SRTFormatter (line 154) | class SRTFormatter(_TextBasedFormatter): method _format_timestamp (line 155) | def _format_timestamp(self, hours: int, mins: int, secs: int, ms: int)... method _format_transcript_header (line 158) | def _format_transcript_header(self, lines: Iterable[str]) -> str: method _format_transcript_helper (line 161) | def _format_transcript_helper( class WebVTTFormatter (line 167) | class WebVTTFormatter(_TextBasedFormatter): method _format_timestamp (line 168) | def _format_timestamp(self, hours: int, mins: int, secs: int, ms: int)... method _format_transcript_header (line 171) | def _format_transcript_header(self, lines: Iterable[str]) -> str: method _format_transcript_helper (line 174) | def _format_transcript_helper( class FormatterLoader (line 180) | class FormatterLoader: class UnknownFormatterType (line 189) | class UnknownFormatterType(Exception): method __init__ (line 190) | def __init__(self, formatter_type: str): method load (line 199) | def load(self, formatter_type: str = "pretty") -> Formatter: FILE: youtube_transcript_api/proxies.py class InvalidProxyConfig (line 5) | class InvalidProxyConfig(Exception): class RequestsProxyConfigDict (line 9) | class RequestsProxyConfigDict(TypedDict): class ProxyConfig (line 20) | class ProxyConfig(ABC): method to_requests_dict (line 27) | def to_requests_dict(self) -> RequestsProxyConfigDict: method prevent_keeping_connections_alive (line 36) | def prevent_keeping_connections_alive(self) -> bool: method retries_when_blocked (line 45) | def retries_when_blocked(self) -> int: class GenericProxyConfig (line 55) | class GenericProxyConfig(ProxyConfig): method __init__ (line 66) | def __init__(self, http_url: Optional[str] = None, https_url: Optional... method to_requests_dict (line 84) | def to_requests_dict(self) -> RequestsProxyConfigDict: class WebshareProxyConfig (line 91) | class WebshareProxyConfig(GenericProxyConfig): method __init__ (line 116) | def __init__( method url (line 159) | def url(self) -> str: method http_url (line 173) | def http_url(self) -> str: method https_url (line 177) | def https_url(self) -> str: method prevent_keeping_connections_alive (line 181) | def prevent_keeping_connections_alive(self) -> bool: method retries_when_blocked (line 185) | def retries_when_blocked(self) -> int: FILE: youtube_transcript_api/test/test_api.py function get_asset_path (line 34) | def get_asset_path(filename: str) -> Path: function load_asset (line 42) | def load_asset(filename: str): class TestYouTubeTranscriptApi (line 47) | class TestYouTubeTranscriptApi(TestCase): method setUp (line 48) | def setUp(self): method test_fetch (line 92) | def test_fetch(self): method test_fetch_formatted (line 100) | def test_fetch_formatted(self): method test_fetch__with_altered_user_agent (line 112) | def test_fetch__with_altered_user_agent(self): method test_list (line 126) | def test_list(self): method test_list__find_manually_created (line 135) | def test_list__find_manually_created(self): method test_list__find_generated (line 141) | def test_list__find_generated(self): method test_list__url_as_video_id (line 151) | def test_list__url_as_video_id(self): method test_translate_transcript (line 163) | def test_translate_transcript(self): method test_translate_transcript__translation_language_not_available (line 171) | def test_translate_transcript__translation_language_not_available(self): method test_translate_transcript__not_translatable (line 177) | def test_translate_transcript__not_translatable(self): method test_fetch__correct_language_is_used (line 184) | def test_fetch__correct_language_is_used(self): method test_fetch__fallback_language_is_used (line 193) | def test_fetch__fallback_language_is_used(self): method test_fetch__create_consent_cookie_if_needed (line 208) | def test_fetch__create_consent_cookie_if_needed(self): method test_fetch__exception_if_create_consent_cookie_failed (line 229) | def test_fetch__exception_if_create_consent_cookie_failed(self): method test_fetch__exception_if_consent_cookie_age_invalid (line 244) | def test_fetch__exception_if_consent_cookie_age_invalid(self): method test_fetch__exception_if_video_unavailable (line 254) | def test_fetch__exception_if_video_unavailable(self): method test_fetch__exception_if_youtube_request_fails (line 264) | def test_fetch__exception_if_youtube_request_fails(self): method test_fetch__exception_if_youtube_request_limit_reached (line 274) | def test_fetch__exception_if_youtube_request_limit_reached( method test_fetch__exception_if_timedtext_request_limit_reached (line 286) | def test_fetch__exception_if_timedtext_request_limit_reached( method test_fetch__exception_if_age_restricted (line 298) | def test_fetch__exception_if_age_restricted(self): method test_fetch__exception_if_ip_blocked (line 308) | def test_fetch__exception_if_ip_blocked(self): method test_fetch__exception_if_po_token_required (line 318) | def test_fetch__exception_if_po_token_required(self): method test_fetch__exception_request_blocked (line 328) | def test_fetch__exception_request_blocked(self): method test_fetch__exception_unplayable (line 341) | def test_fetch__exception_unplayable(self): method test_fetch__exception_if_transcripts_disabled (line 355) | def test_fetch__exception_if_transcripts_disabled(self): method test_fetch__exception_if_language_unavailable (line 373) | def test_fetch__exception_if_language_unavailable(self): method test_fetch__with_proxy (line 380) | def test_fetch__with_proxy(self, to_requests_dict): method test_fetch__with_proxy_prevent_alive_connections (line 395) | def test_fetch__with_proxy_prevent_alive_connections(self, to_requests... method test_fetch__with_proxy_retry_when_blocked (line 406) | def test_fetch__with_proxy_retry_when_blocked(self, to_requests_dict): method test_fetch__with_webshare_proxy_reraise_when_blocked (line 437) | def test_fetch__with_webshare_proxy_reraise_when_blocked(self, to_requ... method test_fetch__with_generic_proxy_reraise_when_blocked (line 467) | def test_fetch__with_generic_proxy_reraise_when_blocked(self, to_reque... method test_fetch__with_cookies (line 491) | def test_fetch__with_cookies(self): method test_load_cookies (line 504) | def test_load_cookies(self): method test_load_cookies__bad_file_path (line 519) | def test_load_cookies__bad_file_path(self): method test_load_cookies__no_valid_cookies (line 528) | def test_load_cookies__no_valid_cookies(self): FILE: youtube_transcript_api/test/test_cli.py class TestYouTubeTranscriptCli (line 18) | class TestYouTubeTranscriptCli(TestCase): method setUp (line 19) | def setUp(self): method test_argument_parsing (line 62) | def test_argument_parsing(self): method test_argument_parsing__only_video_ids (line 130) | def test_argument_parsing__only_video_ids(self): method test_argument_parsing__video_ids_starting_with_dash (line 136) | def test_argument_parsing__video_ids_starting_with_dash(self): method test_argument_parsing__fail_without_video_ids (line 142) | def test_argument_parsing__fail_without_video_ids(self): method test_argument_parsing__json (line 146) | def test_argument_parsing__json(self): method test_argument_parsing__languages (line 157) | def test_argument_parsing__languages(self): method test_argument_parsing__proxies (line 165) | def test_argument_parsing__proxies(self): method test_argument_parsing__list_transcripts (line 186) | def test_argument_parsing__list_transcripts(self): method test_argument_parsing__translate (line 199) | def test_argument_parsing__translate(self): method test_argument_parsing__manually_or_generated (line 216) | def test_argument_parsing__manually_or_generated(self): method test_run (line 238) | def test_run(self): method test_run__failing_transcripts (line 246) | def test_run__failing_transcripts(self): method test_run__exclude_generated (line 253) | def test_run__exclude_generated(self): method test_run__exclude_manually_created (line 262) | def test_run__exclude_manually_created(self): method test_run__exclude_manually_created_and_generated (line 271) | def test_run__exclude_manually_created_and_generated(self): method test_run__translate (line 279) | def test_run__translate(self): method test_run__list_transcripts (line 284) | def test_run__list_transcripts(self): method test_run__json_output (line 290) | def test_run__json_output(self): method test_run__webshare_proxy_config (line 298) | def test_run__webshare_proxy_config(self): method test_run__generic_proxy_config (line 315) | def test_run__generic_proxy_config(self): method test_run__cookies (line 336) | def test_run__cookies(self): method test_version_matches_metadata (line 346) | def test_version_matches_metadata(self): method test_get_version_package_not_found (line 365) | def test_get_version_package_not_found(self): FILE: youtube_transcript_api/test/test_formatters.py class TestFormatters (line 20) | class TestFormatters(TestCase): method setUp (line 21) | def setUp(self): method test_base_formatter_format_call (line 41) | def test_base_formatter_format_call(self): method test_srt_formatter_starting (line 47) | def test_srt_formatter_starting(self): method test_srt_formatter_middle (line 55) | def test_srt_formatter_middle(self): method test_srt_formatter_ending (line 64) | def test_srt_formatter_ending(self): method test_srt_formatter_many (line 72) | def test_srt_formatter_many(self): method test_webvtt_formatter_starting (line 82) | def test_webvtt_formatter_starting(self): method test_webvtt_formatter_ending (line 90) | def test_webvtt_formatter_ending(self): method test_webvtt_formatter_many (line 98) | def test_webvtt_formatter_many(self): method test_pretty_print_formatter (line 108) | def test_pretty_print_formatter(self): method test_pretty_print_formatter_many (line 113) | def test_pretty_print_formatter_many(self): method test_json_formatter (line 118) | def test_json_formatter(self): method test_json_formatter_many (line 123) | def test_json_formatter_many(self): method test_text_formatter (line 128) | def test_text_formatter(self): method test_text_formatter_many (line 135) | def test_text_formatter_many(self): method test_formatter_loader (line 145) | def test_formatter_loader(self): method test_formatter_loader__default_formatter (line 151) | def test_formatter_loader__default_formatter(self): method test_formatter_loader__unknown_format (line 157) | def test_formatter_loader__unknown_format(self): FILE: youtube_transcript_api/test/test_proxies.py class TestGenericProxyConfig (line 10) | class TestGenericProxyConfig: method test_to_requests_dict (line 11) | def test_to_requests_dict(self): method test_to_requests_dict__only_http (line 24) | def test_to_requests_dict__only_http(self): method test_to_requests_dict__only_https (line 36) | def test_to_requests_dict__only_https(self): method test__invalid_config (line 48) | def test__invalid_config(self): class TestWebshareProxyConfig (line 53) | class TestWebshareProxyConfig: method test_to_requests_dict (line 54) | def test_to_requests_dict(self): method test_to_requests_dict__with_location_filter (line 67) | def test_to_requests_dict__with_location_filter(self): method test_to_requests_dict__with_multiple_location_filters (line 81) | def test_to_requests_dict__with_multiple_location_filters(self): method test_to_requests_dict__with_rotate_suffix_in_username (line 95) | def test_to_requests_dict__with_rotate_suffix_in_username(self):