o
    i
                     @   s8   d dl Z ddlmZ G dd deZG dd deZdS )    N   )InfoExtractorc                   @   s8   e Zd ZdZdZdZdddddd	d
ddZdd ZdS )	ToypicsIEFzToypics videoz1https?://videos\.toypics\.net/view/(?P<id>[0-9]+)z5http://videos.toypics.net/view/514/chancebulged,-2-1/ 16e806ad6d6f58079d210fe30985e08b514mp4zChance-Bulge'd, 2   kidsune)idexttitle	age_limituploader)urlmd5	info_dictc                 C   s`   |  |}| ||}| |||d d }| ddg|d}| jd|ddd	}||||d
dS )Nr   formatsz3<h1[^>]+class=["\']view-video-title[^>]+>([^<]+)</hz <title>([^<]+) - Toypics</title>r   z)More videos from <strong>([^<]+)</strong>r   F)fatalr   )r
   r   r   r   r   )	_match_id_download_webpage_parse_html5_media_entries_html_search_regex)selfr   video_idwebpager   r   r    r   L/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/toypics.py_real_extract   s2   
zToypicsIE._real_extractN__name__
__module____qualname___WORKINGIE_DESC
_VALID_URL_TESTr   r   r   r   r   r      s    r   c                   @   s0   e Zd ZdZdZdZdddiddZd	d
 ZdS )ToypicsUserIEFzToypics user profilez6https?://videos\.toypics\.net/(?!view)(?P<id>[^/?#&]+)zhttp://videos.toypics.net/Mikeyr
   Mikey   )r   r   playlist_mincountc                 C   s   |  |}| j||dd}t| d|d}d}g }|| d | }td|d D ] }|d|  }	| j|	|d| d	| d}
|td
|
 q)d|dd |D dS )NzRetrieving profile page)notez,public/">Public Videos \(([0-9]+)\)</a></li>zvideo count   r   z/public/zDownloading page /z\<div[^>]+class=["\']preview[^>]+>\s*<a[^>]+href="(https?://videos\.toypics\.net/view/[^"]+)"playlistc                 S   s   g | ]}d |ddqS )r   Toypics)_typer   ie_keyr   ).0eurlr   r   r   
<listcomp>U   s    
z/ToypicsUserIE._real_extract.<locals>.<listcomp>)r/   r
   entries)r   r   int_search_regexrangeextendrefindall)r   r   usernameprofile_pagevideo_count	PAGE_SIZEurls
page_countn	lpage_urllpager   r   r   r   ;   s:   
zToypicsUserIE._real_extractNr   r   r   r   r   r&   /   s    r&   )r9   commonr   r   r&   r   r   r   r   <module>   s    )