
    V|hj                     b    S SK r S SKrSSKJr  SSKJrJrJrJ	r	J
r
  SSKJrJr   " S S\5      rg)	    N   )InfoExtractor   )float_or_noneint_or_nonestr_or_nonetry_callurl_or_none)find_elementtraverse_objc                   t    \ rS rSrSrSrSrSSSS\S	\S
SSSS\S.S.SSSS\S\SSSSS\S.S./rS r	S r
Srg)	ToutiaoIE   toutiaou   今日头条z8https?://www\.toutiao\.com/video/(?P<id>\d+)/?(?:[?#]|$)z2https://www.toutiao.com/video/7505382061495176511/7505382061495176511mp4ur   新疆多地现不明飞行物，目击者称和月亮一样亮，几秒内突然加速消失，气象部门回应gK7#@20250517iz(hz*re:https?://p\d+-sign\.toutiaoimg\.com/.+$u   极目新闻7MS4wLjABAAAAeateBb9Su8I3MJOZozmvyzWktmba5LMlliRDz1KffnM)idexttitlecomment_countduration
like_countrelease_daterelease_timestamp	thumbnailuploaderuploader_id
view_count)url	info_dictz2https://www.toutiao.com/video/7479446610359878153/7479446610359878153uQ   小伙竟然利用两块磁铁制作成磁力减震器，简直太有创意了！g-]@20250308iUgu   小莉创意发明z7MS4wLjABAAAA4f7d4mwtApALtHIiq-QM20dwXqe32NUz0DeWF7wbHKwc                 F  ^ ^ T R                  S5      R                  S5      (       a  g T R                  SS SSSS0[        R                  " SS	S
SSS.5      R                  5       S9m[        U U4S j5      =n(       a  T R                  SSU5        g T R                  5         g )Nzhttps://www.toutiao.comttwidz1https://ttwid.bytedance.com/ttwid/union/register/zFetching ttwidzUnable to fetch ttwidzContent-Typezapplication/json   Fcnzwww.toutiao.comT)aidneedFidregionserviceunion)headersdatac                  T   > T R                  TR                  5      S   R                  $ )Nr&   )_get_cookiesr!   value)selfurlhs   R/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/toutiao.py<lambda>,ToutiaoIE._real_initialize.<locals>.<lambda>G   s    T%6%6txx%@%I%O%O    z.toutiao.com)	r1   get_request_webpagejsondumpsencoder	   _set_cookieraise_login_required)r3   r&   r4   s   ` @r5   _real_initializeToutiaoIE._real_initialize6   s    67;;GDD$$?5 2@JJ ,   vx % 
 OPP5P^We<!!#r8   c                    U R                  U5      nU R                  X5      n[        U[        SSS91[        R
                  R                  1[        R                  1SS45      n/ n[        USSS 45       H  nUR                  S	US
   0[        USS[        14S[        14S[        1[        14S[        14S[        14S[        14S[        14S[        14S[        SS914S[        14S[        14S.45      E5        M     UUS.[        US[        14SS[        14S[        14S[        14S[        1[        4S [        14S!S"[        14S!S#[        14S$[        14S%[        14S&.
5      E$ )'NscriptRENDER_DATA)tagr   r/   initialVideovideoPlayInfo
video_listc                     US   $ )Nmain_url )_vs     r5   r6   )ToutiaoIE._real_extract.<locals>.<lambda>W   s    *r8   r!   rJ   
video_metaaudio_profileaudio_sample_rateaudio_channelsvtypesize
definitionfpsvheightreal_bitratei  )scale
codec_typevwidth)acodecasrrR   r   filesize	format_idrV   heighttbrvcodecwidth)r   formatscommentCountvideo_duration
repinCountpublishTime)postercoverUrlr   userInfonameuserId	playCount	detailUrl)
r   r   r   r   r   r   r   r   r    webpage_url)	_match_id_download_webpager   r   urllibparseunquoter;   loadsappendstrr   r   r
   anyr   )r3   r!   video_idwebpage
video_datard   videos          r5   _real_extractToutiaoIE._real_extractM   s   >>#&((7!'h=9:\\!!"TZZL&.,
 

 !*\+E/
 E NNuZ(u|.6/+?'7-;-&X#cU+!'+ 7".!6!K=1(;-8*]-F,GH+cU3&66 '  * 
 :"0;-!@,.>P+k];&3k]%C4{mSI!C5)'#7 *H{mD*[M: +k];( 
 	
r8   rK   N)__name__
__module____qualname____firstlineno__IE_NAMEIE_DESC
_VALID_URLint_TESTSr@   r~   __static_attributes__rK   r8   r5   r   r      s    GGLJC' J &!+F&T
" D'h &!+F,T
! FD$.,
r8   r   )r;   urllib.parsers   commonr   utilsr   r   r   r	   r
   utils.traversalr   r   r   rK   r8   r5   <module>r      s+      !  9j
 j
r8   