aboutsummaryrefslogtreecommitdiffstats
path: root/yt_dlp/extractor/vlive.py
diff options
context:
space:
mode:
authorpukkandan <pukkandan.ytdlp@gmail.com>2022-03-19 02:23:33 +0530
committerGitHub <noreply@github.com>2022-03-18 13:53:33 -0700
commit52efa4b31200119adaa8acf33e50b84fcb6948f0 (patch)
treef1963a4ade1111db9db8edea8fff0a7c58923cf9 /yt_dlp/extractor/vlive.py
parent028f6437f1cb45bb9b3b286cba173b0588337feb (diff)
downloadhypervideo-pre-52efa4b31200119adaa8acf33e50b84fcb6948f0.tar.lz
hypervideo-pre-52efa4b31200119adaa8acf33e50b84fcb6948f0.tar.xz
hypervideo-pre-52efa4b31200119adaa8acf33e50b84fcb6948f0.zip
[extractor] Add `_perform_login` function (#2943)
* Adds new functions `_initialize_pre_login` and `_perform_login` as part of the extractor API * Adds `ie.supports_login` to the public API
Diffstat (limited to 'yt_dlp/extractor/vlive.py')
-rw-r--r--yt_dlp/extractor/vlive.py16
1 files changed, 5 insertions, 11 deletions
diff --git a/yt_dlp/extractor/vlive.py b/yt_dlp/extractor/vlive.py
index 74dc349d5..ae35c976c 100644
--- a/yt_dlp/extractor/vlive.py
+++ b/yt_dlp/extractor/vlive.py
@@ -26,22 +26,16 @@ class VLiveBaseIE(NaverBaseIE):
_NETRC_MACHINE = 'vlive'
_logged_in = False
- def _real_initialize(self):
- if not self._logged_in:
- VLiveBaseIE._logged_in = self._login()
-
- def _login(self):
- email, password = self._get_login_info()
- if email is None:
- return False
-
+ def _perform_login(self, username, password):
+ if self._logged_in:
+ return
LOGIN_URL = 'https://www.vlive.tv/auth/email/login'
self._request_webpage(
LOGIN_URL, None, note='Downloading login cookies')
self._download_webpage(
LOGIN_URL, None, note='Logging in',
- data=urlencode_postdata({'email': email, 'pwd': password}),
+ data=urlencode_postdata({'email': username, 'pwd': password}),
headers={
'Referer': LOGIN_URL,
'Content-Type': 'application/x-www-form-urlencoded'
@@ -54,7 +48,7 @@ class VLiveBaseIE(NaverBaseIE):
if not try_get(login_info, lambda x: x['message']['login'], bool):
raise ExtractorError('Unable to log in', expected=True)
- return True
+ VLiveBaseIE._logged_in = True
def _call_api(self, path_template, video_id, fields=None, query_add={}, note=None):
if note is None: