
    V|h0	                     D    S SK r SSKJr   " S S\5      r " S S\5      rg)    N   )InfoExtractorc                   :    \ rS rSrSrSrSSSSSS	S
S.S.rS rSrg)SoundgasmIE   	soundgasmz[https?://(?:www\.)?soundgasm\.net/u/(?P<user>[0-9a-zA-Z_-]+)/(?P<display_id>[0-9a-zA-Z_-]+)z(http://soundgasm.net/u/ytdl/Piano-sample 010082a2c802c5275bb00030743e75ad(88abd86ea000cafe98f96321b23cc1206cbcbcc9m4azPiano samplezRoyalty Free Sample Musicytdl)idexttitledescriptionuploader)urlmd5	info_dictc           	      *   U R                  U5      nUR                  S5      nU R                  X5      nU R                  SUSSS9nU R	                  SUSUS9nU R                  S	US
SS9nU R	                  SUSUS9nUUUSUUUR                  S5      S.$ )N
display_idz,(?s)m4a\s*:\s*(["\'])(?P<url>(?:(?!\1).)+)\1z	audio URLr   )groupz+<div[^>]+\bclass=["\']jp-title[^>]+>([^<]+)r   )default)z9(?s)<div[^>]+\bclass=["\']jp-description[^>]+>(.+?)</div>z!(?s)<li>Description:\s(.*?)<\/li>r   F)fatalz/([^/]+)\.m4azaudio idnoneuser)r   r   r   vcodecr   r   r   )_match_valid_urlr   _download_webpage_html_search_regex_search_regex)	selfr   mobjr   webpage	audio_urlr   r   audio_ids	            T/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/soundgasm.py_real_extractSoundgasmIE._real_extract   s    $$S)ZZ-
((9++;Wu , &	 "":Wj # 2 --3]% . 1
 %%iZ & I $&

6*
 	
     N	__name__
__module____qualname____firstlineno__IE_NAME
_VALID_URL_TESTr'   __static_attributes__r*   r)   r&   r   r      s2    GoJ91<#6

E
r)   r   c                   2    \ rS rSrSrSrSSS0SS.rS	 rS
rg)SoundgasmProfileIE6   zsoundgasm:profilez=https?://(?:www\.)?soundgasm\.net/u/(?P<id>[^/]+)/?(?:\#.*)?$zhttp://soundgasm.net/u/ytdlr   r   r   )r   r   playlist_countc                     U R                  U5      nU R                  X5      n[        R                  " SU S3U5       Vs/ s H  nU R	                  US5      PM     nnU R                  XR5      $ s  snf )Nzhref="([^"]+/u/z/[^"]+)	Soundgasm)	_match_idr   refindall
url_resultplaylist_result)r!   r   
profile_idr#   r$   entriess         r&   r'    SoundgasmProfileIE._real_extractA   s}    ^^C(
((9  ZZ?:,g(NPWXZX	 OOI{3X 	 Z ##G88	Zs    A/r*   Nr+   r*   r)   r&   r5   r5   6   s*    !GQJ,&
 E	9r)   r5   )r;   commonr   r   r5   r*   r)   r&   <module>rC      s$    	 !-
- -
`9 9r)   