diff --git a/youtube_dl/extractor/crunchyroll.py b/youtube_dl/extractor/crunchyroll.py index 463f995c7..fc1210079 100644 --- a/youtube_dl/extractor/crunchyroll.py +++ b/youtube_dl/extractor/crunchyroll.py @@ -52,28 +52,51 @@ class CrunchyrollBaseIE(InfoExtractor): username, password = self._get_login_info() if username is None: return + ''' + import cfscrape - self._download_webpage( + proxies = {"http": self._downloader.params.get('proxy'), "https": self._downloader.params.get('proxy')} + tokens, user_agent = cfscrape.get_tokens(self._LOGIN_URL, proxies=proxies, user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0") + + self._set_cookie( '.crunchyroll.com', 'cf_clearance',tokens['cf_clearance']) + self._set_cookie( '.crunchyroll.com', '__cfduid',tokens['__cfduid']) + ''' + login_page = self._download_webpage( 'https://www.crunchyroll.com/?a=formhandler', None, 'Logging in', 'Wrong login info', data=urlencode_postdata({ 'formname': 'RpcApiUser_Login', 'next_url': 'https://www.crunchyroll.com/acct/membership', + 'fail_url': self._LOGIN_URL, 'name': username, 'password': password, - })) - - ''' - login_page = self._download_webpage( - self._LOGIN_URL, None, 'Downloading login page') + }), expected_status=503) def is_logged(webpage): - return '