
    uki                     z    d dl mZ d dlmZ ddlmZ ddlmZmZ  G d de      Z	 G d d	e	      Z
 G d
 de	      Zy)   )BrightcoveNewIE)InfoExtractor   )parse_iso8601)requiretraverse_objc                        e Zd ZdZed        Zy)NetAppBaseIEzRhttps://players.brightcove.net/6255154784001/default_default/index.html?videoId={}c                 L    t        | dt        hfdt        hfdt        hfd      S )Nnamedescription	createdAt)titler   	timestamp)r   strr   )items    R/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/yt_dlp/extractor/netapp.py_parse_metadatazNetAppBaseIE._parse_metadata
   s3    Dse_)C51%7#
  	    N)__name__
__module____qualname___BC_URLstaticmethodr    r   r   r
   r
      s    bG r   r
   c                   @    e Zd ZdZdddddddd	d
ddd
ddddgZd Zy)NetAppVideoIEz;https?://media\.netapp\.com/video-detail/(?P<id>[0-9a-f-]+)z}https://media.netapp.com/video-detail/da25fc01-82ad-5284-95bc-26920200a222/seamless-storage-for-modern-kubernetes-deployments1843620950167202073mp4z2Seamless storage for modern Kubernetes deploymentsz$md5:1ee39e315243fe71fb90af27960372486255154784001gޠ@zOre:https://house-fastly-signed-us-east-1-prod\.brightcovecdn\.com/image/.*\.jpgzcount:15i=7h20250918)
idextr   r   uploader_idduration	thumbnailtagsr   upload_date)url	info_dictzhttps://media.netapp.com/video-detail/45593e5d-cf1c-5996-978c-c9081906e69f/unleash-ai-innovation-with-your-data-with-the-netapp-platformT)r)   only_matchingc                 H   | j                  |      }| j                  d| |      }t        |dd dt        ht        t        d      hf      }t        |dd t        f      } | j                  | j                  j                  |      t        |fddi| j                  |      S )	Nz+https://api.media.netapp.com/client/detail/sectionsc                     |d   dk(  S )NtypePlayerr   _vs     r   <lambda>z-NetAppVideoIE._real_extract.<locals>.<lambda>/   s    QvY(%: r   videozbrightcove video idc                     |d   dk(  S )Nr/   VideoDetailr   r1   s     r   r4   z-NetAppVideoIE._real_extract.<locals>.<lambda>1   s    aiS`F` r   url_transparentT)	_match_id_download_jsonr   r   anyr   
url_resultr   formatr   r   )selfr)   
video_uuidmetadatabrightcove_video_id
video_items         r   _real_extractzNetAppVideoIE._real_extract)   s    ^^C(
&&9*F
T +8:GcUCRYZoRpQq6s t "(Z9`be,fg
tLL 34oGZF F$($8$8$DF 	Fr   N)r   r   r   
_VALID_URL_TESTSrC   r   r   r   r   r      sP    OJ O'IA*k#%
 ZF&Fr   r   c                   0    e Zd ZdZddddddgZd Zd	 Zy
)NetAppCollectionIEz9https?://media\.netapp\.com/collection/(?P<id>[0-9a-f-]+)zHhttps://media.netapp.com/collection/9820e190-f2a6-47ac-9c0a-98e5e64234a4zFeatured sessionsz$9820e190-f2a6-47ac-9c0a-98e5e64234a4)r   r"      )r)   r*   playlist_countc              #      K   t        |dd f      D ]L  }|d   } | j                  | j                  j                  |      t        |fddi| j                  |       N y w)Nitemsc                     |d   S )NbrightcoveVideoIdr   r1   s     r   r4   z-NetAppCollectionIE._entries.<locals>.<lambda>D   s    !DWBX r   rM   r8   T)r   r<   r   r=   r   r   )r>   r@   r   rA   s       r   _entrieszNetAppCollectionIE._entriesC   sz      G5X+YZ 	DD"&':";!$//##$78/K^D $D(,(<(<T(BD D	Ds   A A"c                     | j                  |      }| j                  d| |      }| j                  | j                  |      ||j	                  d            S )Nz/https://api.media.netapp.com/client/collection/r   )playlist_title)r9   r:   playlist_resultrN   get)r>   r)   collection_uuidr@   s       r   rC   z NetAppCollectionIE._real_extractJ   s_    ..-&&=o=NOQ`b ##DMM($;_]e]i]ijp]q#rrr   N)r   r   r   rD   rE   rN   rC   r   r   r   rG   rG   8   s2    MJY(8
  FDsr   rG   N)
brightcover   commonr   utilsr   utils.traversalr   r   r
   r   rG   r   r   r   <module>rX      s:    ' ! ! 3	= 	"FL "FJs sr   