[yandexmusic] Improve captcha detection
This commit is contained in:
		
							parent
							
								
									abbb2938fa
								
							
						
					
					
						commit
						197a5da1d0
					
				| @ -20,10 +20,11 @@ class YandexMusicBaseIE(InfoExtractor): | |||||||
|             error = response.get('error') |             error = response.get('error') | ||||||
|             if error: |             if error: | ||||||
|                 raise ExtractorError(error, expected=True) |                 raise ExtractorError(error, expected=True) | ||||||
|  |             if response.get('type') == 'captcha' or 'captcha' in response: | ||||||
|  |                 YandexMusicBaseIE._raise_captcha() | ||||||
| 
 | 
 | ||||||
|     def _download_webpage(self, *args, **kwargs): |     @staticmethod | ||||||
|         webpage = super(YandexMusicBaseIE, self)._download_webpage(*args, **kwargs) |     def _raise_captcha(): | ||||||
|         if 'Нам очень жаль, но запросы, поступившие с вашего IP-адреса, похожи на автоматические.' in webpage: |  | ||||||
|         raise ExtractorError( |         raise ExtractorError( | ||||||
|             'YandexMusic has considered youtube-dl requests automated and ' |             'YandexMusic has considered youtube-dl requests automated and ' | ||||||
|             'asks you to solve a CAPTCHA. You can either wait for some ' |             'asks you to solve a CAPTCHA. You can either wait for some ' | ||||||
| @ -32,6 +33,11 @@ class YandexMusicBaseIE(InfoExtractor): | |||||||
|             'solve CAPTCHA, then export cookies and pass cookie file to ' |             'solve CAPTCHA, then export cookies and pass cookie file to ' | ||||||
|             'youtube-dl with --cookies', |             'youtube-dl with --cookies', | ||||||
|             expected=True) |             expected=True) | ||||||
|  | 
 | ||||||
|  |     def _download_webpage(self, *args, **kwargs): | ||||||
|  |         webpage = super(YandexMusicBaseIE, self)._download_webpage(*args, **kwargs) | ||||||
|  |         if 'Нам очень жаль, но запросы, поступившие с вашего IP-адреса, похожи на автоматические.' in webpage: | ||||||
|  |             self._raise_captcha() | ||||||
|         return webpage |         return webpage | ||||||
| 
 | 
 | ||||||
|     def _download_json(self, *args, **kwargs): |     def _download_json(self, *args, **kwargs): | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user