
    uki                     J    d dl Z ddlmZ ddlmZmZmZmZmZ  G d de      Z	y)    N   )InfoExtractor   )extract_attributesint_or_nonejoin_nonemptyparse_iso8601try_getc                       e Zd ZdZde dZdddddddddd	ddd
dddddddddddddddddddddddgZdddddddddddgdgZddgdfg d d!fgZed"        Z	d# Z
y$)%ArcPublishingIEz([\da-f]{8}-(?:[\da-f]{4}-){3}[\da-f]{12}z%arcpublishing:(?P<org>[a-z]+):(?P<id>)z6arcpublishing:adn:8c99cb6e-b29c-4bc9-9173-7bf9979225abT)urlonly_matchingz>arcpublishing:bostonglobe:232b7ae6-7d73-432d-bc0a-85dbf0119ab1z6arcpublishing:cmg:cfb1cf1b-3ab5-4d1b-86c5-a5515d311f2az=arcpublishing:elcomercio:27a7e1f8-2ec7-4177-874f-a4feed2885b3z6arcpublishing:gmg:c8793fb2-8d44-4242-881e-2db31da2d9fez7arcpublishing:gray:0b0ba30e-032a-4598-8810-901d70e6033ez>arcpublishing:gruponacion:dfcbfa57-527f-45ff-a69b-35fe71054143z6arcpublishing:mco:aa0ca6fe-1127-46d4-b32c-be0d6fdb8055z?arcpublishing:mentormedier:47a12084-650b-4011-bfd0-3699b6947b2dz9arcpublishing:raycom:b89f61f8-79fa-4c09-8255-e64237119bf7z7arcpublishing:tgam:411b34c1-8701-4036-9831-26964711664bz8arcpublishing:tronc:460f2931-8130-4719-8ea1-ffcb2d7cb685zdhttps://www.uppermichiganssource.com/2025/07/18/scattered-showers-storms-bring-heavy-rain-potential/z$508116f7-e999-48db-b7c2-60a04842679bmp4z5Scattered showers & storms bring heavy rain potentiali  zre:https?://.+\.jpgizh20250718)idexttitledescriptionduration	thumbnail	timestampupload_datez2Ignoring subtitle tracks found in the HLS manifest)r   	info_dictexpected_warningscmgprisaz.%s-config-prod.api.cdn.arcpublishing.com/video)adnadvancelocalanswersbonnierbostonglobedemogmggruponacioninfobaemconzmepmnraycom	spectatortbttgamtroncwapowweekz&video-api-cdn.%s.arcpublishing.com/apic                     g }t        j                  dt        j                   d|      D ]P  }t	        |      xs i }|j                  d      }|j                  d      }|s7|s:|j                  d| d|        R |S )Nz4(<div[^>]+class="[^"]*\bpowa\b[^"]*"[^>]+data-uuid="z"[^>]*>)zdata-orgz	data-uuidzarcpublishing::)refindallr   _UUID_REGEXr   getappend)clsr   webpageentriespowa_elpowaorguuids           Y/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/yt_dlp/extractor/arcpublishing.py_extract_embed_urlsz#ArcPublishingIE._extract_embed_urlsX   s    zz%YZiZuZuYvv~"  BI  J 	>G%g.4"D((:&C88K(DtuAdV<=	>     c                 N   | j                  |      j                         \  }}| j                  D ]  \  }}||v s|} n d}|dk(  rd}| j                  d||z  z  |d|i      d   }|d   d	   }|j	                  d
      dk(  }	g }
g }|j	                  dg       D ]  }|j	                  d      }|r||
v r|
j                  |       |j	                  d      }|dk(  r| j                  ||d      }|D ]h  }|d   j                  d      sd|d<   |d   j                  d      sd|d   z   |d<   t        |d   t              sP|d   dz  |d<   |d= d|d   z  |d<   j |j                  |       |dv r| j                  ||d|	dd      }t        d  |D              r|D ]B  }|j	                  d!      }|s| j                  d"|z  |d   dd #      }|s5t        |      |d<   D |j                  |       _t!        |j	                  d$            }|j                  t#        ||      |t!        |j	                  d%            t!        |j	                  d!            t!        |j	                  d&            |d'd(        i }t%        |d) t&              xs g D ]9  }|j	                  d      }|s|j)                  d*g       j                  d|i       ; ||t%        |d+       t%        |d,       |t!        |j	                  d-      d.      t+        |j	                  d/            ||	d0	S )1Nz+%s-prod-cdn.video-api.arcpublishing.com/apir/   washpostz"https://%s/v1/ansvideos/findByUuidr>   )queryr   	headlinesbasicstatuslivestreamsr   stream_typesmilF)fatalz/cfx/stzcfx/stapp	play_pathzmp4:tbri  vbrzrtmp-%d	format_id)tshlsr   rS   )rH   m3u8_idrL   c              3   D   K   | ]  }|j                  d       dk(    yw)acodecnoneN)r6   ).0fs     r?   	<genexpr>z0ArcPublishingIE._real_extract.<locals>.<genexpr>   s     GQquuX&0Gs    heightz[_x]%d[_-](\d+))defaultbitratewidthfilesizei)rQ   rP   r^   r[   r_   r   qualityc                     | d   d   S )N	subtitlesurls xs    r?   <lambda>z/ArcPublishingIE._real_extract.<locals>.<lambda>   s    !K.2H rA   enc                     | d   d   S )Npromo_imager   rd   re   s    r?   rg   z/ArcPublishingIE._real_extract.<locals>.<lambda>   s    !M2B52I rA   c                     | d   d   S )NsubheadlinesrF   rd   re   s    r?   rg   z/ArcPublishingIE._real_extract.<locals>.<lambda>   s    An4Eg4N rA   r   d   created_date)	r   r   r   r   formatsr   r   rb   is_live)_match_valid_urlgroups_POWA_DEFAULTS_download_jsonr6   r7   _extract_smil_formatsendswith
startswith
isinstancefloatextend_extract_m3u8_formatsall_search_regexintr   r   r
   list
setdefaultr	   )selfr   r=   r>   orgstmplbase_api_tmplvideor   rp   rc   ro   ss_urlrJ   smil_formatsrY   m3u8_formatsr[   rP   rb   subtitlesubtitle_urls                          r?   _real_extractzArcPublishingIE._real_extractd   s   ))#.557	T-- 	JJD$d{ $	J
 JM&=C##0MC4GH $ (()+ k"7+))H%/9b) +	AEE%LEETMKK%%.Kf$#994u  :  .% BAx((3#+% ~88@-3an-DAkN%ah6'(x$AeH !%-65-AAkNB |,-#994We5  :  RG,GG% ,AUU8_F! ,,*V3QuXud - TC#&s8%, |,!!%%	"23!.{C!@(w8)!%%/: +AEE*,= > "  G+	Z 	 (H$OUSU 	MH#<<.L$$T2.55ul6KL	M  (IJ"5*NO#EIIj$93?&uyy'@A"

 
	
rA   N)__name__
__module____qualname__r5   
_VALID_URL_TESTS_WEBPAGE_TESTSrs   classmethodr@   r   rd   rA   r?   r   r      s>   =K9+aHJ H P H O H I P H Q K I JY0Fd v8LR/#%	
 SS N 	KL

 4		5N 	 	O
rA   r   )
r3   commonr   utilsr   r   r   r	   r
   r   rd   rA   r?   <module>r      s#    	 ! f
m f
rA   