U
    $Pf                     @   sP   d dl mZ ddlmZ ddlmZ ddlmZmZm	Z	m
Z
 G dd deZd	S )
    )unicode_literals   )InfoExtractor   )compat_b64decode)ExtractorErrorHEADRequestsanitized_Requesturlencode_postdatac                   @   s,   e Zd ZdZdddddddZd	d
 ZdS )HotNewHipHopIEz9https?://(?:www\.)?hotnewhiphop\.com/.*\.(?P<id>.*)\.htmlzGhttp://www.hotnewhiphop.com/freddie-gibbs-lay-it-down-song.1435540.htmlZ 2c2cd2f76ef11a9b3b581e8b232f3d96Z1435540Zmp3zFreddie Gibbs - Lay It Down)idexttitle)urlmd5Z	info_dictc                 C   s   |  |}| ||}| jd|dd d}|d krL| d|d}| j|ddS tdd	|fg}td
|d}|dd | j||ddd}d|krtdt	|
d}	t|	}
| j|
|ddd}| }|drtd| | }|||| |dS )Nzdata-path="(.*?)"z	video URL)defaultz"contentUrl" content="(.*?)"zcontent URLZYoutube)Zie)Z	mediaTypesZmediaIdz2http://www.hotnewhiphop.com/ajax/media/getActions/)datazContent-Typez!application/x-www-form-urlencodedzRequesting media keyzCould not download media key)ZnoteZerrnoteZmediaKeyzDid not get a media keyzutf-8zResolving final URLzCould not resolve final URLz.htmlzRedirect failed)r   r   r   Z	thumbnail)Z	_match_idZ_download_webpageZ_search_regexZ
url_resultr
   r	   
add_headerZ_download_jsonr   r   decoder   Z_request_webpagegeturlendswithZ_og_search_titlestripZ_og_search_thumbnail)selfr   Zvideo_idZwebpageZvideo_url_base64Z	video_urlZreqdatarZmkdZredirect_urlZredirect_reqreqZvideo_title r   E/tmp/pip-unpacked-wheel-7zdooeg3/youtube_dl/extractor/hotnewhiphop.py_real_extract   sb    
          
zHotNewHipHopIE._real_extractN)__name__
__module____qualname__Z
_VALID_URLZ_TESTr   r   r   r   r   r      s   
r   N)
__future__r   commonr   compatr   utilsr   r   r	   r
   r   r   r   r   r   <module>   s   