Skip to content

Commit

Permalink
[udemy] Update User-Agent and detect captcha (closes #14713, closes #…
Browse files Browse the repository at this point in the history
…15839, closes #18126)
  • Loading branch information
dstftw committed Feb 16, 2019
1 parent ba2e373 commit ae65c93
Showing 1 changed file with 14 additions and 2 deletions.
16 changes: 14 additions & 2 deletions youtube_dl/extractor/udemy.py
Original file line number Diff line number Diff line change
Expand Up @@ -123,10 +123,22 @@ def _handle_error(self, response):

def _download_webpage_handle(self, *args, **kwargs):
headers = kwargs.get('headers', {}).copy()
headers['User-Agent'] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/603.2.4 (KHTML, like Gecko) Version/10.1.1 Safari/603.2.4'
headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36'
kwargs['headers'] = headers
return super(UdemyIE, self)._download_webpage_handle(
ret = super(UdemyIE, self)._download_webpage_handle(
*args, **compat_kwargs(kwargs))
if not ret:
return ret
webpage, _ = ret
if any(p in webpage for p in (
'>Please verify you are a human',
'Access to this page has been denied because we believe you are using automation tools to browse the website',
'"_pxCaptcha"')):
raise ExtractorError(
'Udemy asks you to solve a CAPTCHA. Login with browser, '
'solve CAPTCHA, then export cookies and pass cookie file to '
'youtube-dl with --cookies.', expected=True)
return ret

def _download_json(self, url_or_request, *args, **kwargs):
headers = {
Expand Down

0 comments on commit ae65c93

Please sign in to comment.