aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpukkandan <pukkandan.ytdlp@gmail.com>2021-09-05 11:16:23 +0530
committerpukkandan <pukkandan.ytdlp@gmail.com>2021-09-05 11:16:23 +0530
commit526d74ec5a8bd422d5327d576fd341136ec802d2 (patch)
tree2a4a10ddd0ff562d9babb1b39161d57b8660b30b
parente04a1ff92e015bf431486d1fbcc8b243a92bfc71 (diff)
downloadhypervideo-pre-526d74ec5a8bd422d5327d576fd341136ec802d2.tar.lz
hypervideo-pre-526d74ec5a8bd422d5327d576fd341136ec802d2.tar.xz
hypervideo-pre-526d74ec5a8bd422d5327d576fd341136ec802d2.zip
[cleanup] Misc
-rw-r--r--Changelog.md2
-rw-r--r--README.md2
-rw-r--r--yt_dlp/cookies.py4
-rw-r--r--yt_dlp/extractor/soundcloud.py2
-rw-r--r--yt_dlp/extractor/tiktok.py6
-rw-r--r--yt_dlp/extractor/youtube.py2
-rw-r--r--yt_dlp/utils.py4
7 files changed, 10 insertions, 12 deletions
diff --git a/Changelog.md b/Changelog.md
index 9ccc505b7..6901e28f2 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -30,7 +30,7 @@
* The fetched sponsor sections are written to the infojson
* Deprecates: `--sponskrub`, `--no-sponskrub`, `--sponskrub-cut`, `--no-sponskrub-cut`, `--sponskrub-force`, `--no-sponskrub-force`, `--sponskrub-location`, `--sponskrub-args`
* Split `--embed-chapters` from `--embed-metadata` (it still implies the former by default)
-* Add option `--remove-chapters` to remove arbitrary chapters by [nihil-admirari](https://github.com/nihil-admirari), pukkandan
+* Add option `--remove-chapters` to remove arbitrary chapters by [nihil-admirari](https://github.com/nihil-admirari), [pukkandan](https://github.com/pukkandan)
* Add option `--force-keyframes-at-cuts` for more accurate cuts when removing and splitting chapters by [nihil-admirari](https://github.com/nihil-admirari)
* Let `--match-filter` reject entries early
* Makes redundant: `--match-title`, `--reject-title`, `--min-views`, `--max-views`
diff --git a/README.md b/README.md
index 84974249d..2e4bedc93 100644
--- a/README.md
+++ b/README.md
@@ -966,7 +966,7 @@ To summarize, the general syntax for a field is:
%(name[.keys][addition][>strf][|default])[flags][width][.precision][length]type
```
-Additionally, you can set different output templates for the various metadata files separately from the general output template by specifying the type of file followed by the template separated by a colon `:`. The different file types supported are `subtitle`, `thumbnail`, `description`, `annotation`, `infojson`, `pl_thumbnail`, `pl_description`, `pl_infojson`, `chapter`. For example, `-o '%(title)s.%(ext)s' -o 'thumbnail:%(title)s\%(title)s.%(ext)s'` will put the thumbnails in a folder with the same name as the video.
+Additionally, you can set different output templates for the various metadata files separately from the general output template by specifying the type of file followed by the template separated by a colon `:`. The different file types supported are `subtitle`, `thumbnail`, `description`, `annotation` (deprecated), `infojson`, `pl_thumbnail`, `pl_description`, `pl_infojson`, `chapter`. For example, `-o '%(title)s.%(ext)s' -o 'thumbnail:%(title)s\%(title)s.%(ext)s'` will put the thumbnails in a folder with the same name as the video.
The available fields are:
diff --git a/yt_dlp/cookies.py b/yt_dlp/cookies.py
index 74219a8f7..bc3bb62f4 100644
--- a/yt_dlp/cookies.py
+++ b/yt_dlp/cookies.py
@@ -123,7 +123,7 @@ def _extract_firefox_cookies(profile, logger):
cookie_database_path = _find_most_recently_used_file(search_root, 'cookies.sqlite')
if cookie_database_path is None:
raise FileNotFoundError('could not find firefox cookies database in {}'.format(search_root))
- logger.debug('extracting from: "{}"'.format(cookie_database_path))
+ logger.debug('Extracting cookies from: "{}"'.format(cookie_database_path))
with tempfile.TemporaryDirectory(prefix='youtube_dl') as tmpdir:
cursor = None
@@ -240,7 +240,7 @@ def _extract_chrome_cookies(browser_name, profile, logger):
cookie_database_path = _find_most_recently_used_file(search_root, 'Cookies')
if cookie_database_path is None:
raise FileNotFoundError('could not find {} cookies database in "{}"'.format(browser_name, search_root))
- logger.debug('extracting from: "{}"'.format(cookie_database_path))
+ logger.debug('Extracting cookies from: "{}"'.format(cookie_database_path))
decryptor = get_cookie_decryptor(config['browser_dir'], config['keyring_name'], logger)
diff --git a/yt_dlp/extractor/soundcloud.py b/yt_dlp/extractor/soundcloud.py
index c7078ece6..77e248a47 100644
--- a/yt_dlp/extractor/soundcloud.py
+++ b/yt_dlp/extractor/soundcloud.py
@@ -23,7 +23,6 @@ from ..utils import (
int_or_none,
KNOWN_EXTENSIONS,
mimetype2ext,
- network_exceptions,
remove_end,
parse_qs,
str_or_none,
@@ -711,7 +710,6 @@ class SoundcloudPagedPlaylistBaseIE(SoundcloudIE):
query.pop('offset', None)
-
class SoundcloudUserIE(SoundcloudPagedPlaylistBaseIE):
_VALID_URL = r'''(?x)
https?://
diff --git a/yt_dlp/extractor/tiktok.py b/yt_dlp/extractor/tiktok.py
index 08a34db47..6c50ec7df 100644
--- a/yt_dlp/extractor/tiktok.py
+++ b/yt_dlp/extractor/tiktok.py
@@ -132,9 +132,9 @@ class TikTokIE(InfoExtractor):
class TikTokUserIE(InfoExtractor):
IE_NAME = 'tiktok:user'
- _VALID_URL = r'(?!.*/video/)https?://www\.tiktok\.com/@(?P<id>[\w\._]+)'
+ _VALID_URL = r'https?://(?:www\.)?tiktok\.com/@(?P<id>[\w\._]+)/?(?:$|[#?])'
_TESTS = [{
- 'url': 'https://www.tiktok.com/@corgibobaa?lang=en',
+ 'url': 'https://tiktok.com/@corgibobaa?lang=en',
'playlist_mincount': 45,
'info_dict': {
'id': '6935371178089399301',
@@ -196,7 +196,7 @@ class TikTokUserIE(InfoExtractor):
'Referer': video_url,
}
}
- if not data_json['hasMore']:
+ if not data_json.get('hasMore'):
break
cursor = data_json['cursor']
diff --git a/yt_dlp/extractor/youtube.py b/yt_dlp/extractor/youtube.py
index e184cc6a6..65a6c043e 100644
--- a/yt_dlp/extractor/youtube.py
+++ b/yt_dlp/extractor/youtube.py
@@ -803,7 +803,7 @@ class YoutubeBaseInfoExtractor(InfoExtractor):
# We also want to catch all other network exceptions since errors in later pages can be troublesome
# See https://github.com/yt-dlp/yt-dlp/issues/507#issuecomment-880188210
if not isinstance(e.cause, compat_HTTPError) or e.cause.code not in (403, 429):
- last_error = error_to_compat_str(e.cause or e)
+ last_error = error_to_compat_str(e.cause or e.msg)
if count < retries:
continue
if fatal:
diff --git a/yt_dlp/utils.py b/yt_dlp/utils.py
index cdf4c0755..ce84f7416 100644
--- a/yt_dlp/utils.py
+++ b/yt_dlp/utils.py
@@ -2408,7 +2408,7 @@ class ExtractorError(YoutubeDLError):
if sys.exc_info()[0] in network_exceptions:
expected = True
- self.msg = msg
+ self.msg = str(msg)
self.traceback = tb
self.expected = expected
self.cause = cause
@@ -2419,7 +2419,7 @@ class ExtractorError(YoutubeDLError):
super(ExtractorError, self).__init__(''.join((
format_field(ie, template='[%s] '),
format_field(video_id, template='%s: '),
- msg,
+ self.msg,
format_field(cause, template=' (caused by %r)'),
'' if expected else bug_reports_message())))