
    g                     2    d dl mZ d dlmZ  G d de      Zy)    )Driver)logc                   R     e Zd Z fdZdefdZdefdZed        Zd Z	d Z
 xZS )OperaDriverc                 D    t         t        |   ||||||       || _        y N)superr   __init__opera_release_tag)	selfnamedriver_versionurllatest_release_urlr   http_clientos_system_manager	__class__s	           R/var/www/html/venv/lib/python3.12/site-packages/webdriver_manager/drivers/opera.pyr
   zOperaDriver.__init__   s0     	k4)	
 "3    returnc                     | j                   j                  | j                  | j                        }|j	                         d   S )Nr   headerstag_name)_http_clientgetr   auth_headerjson)r   resps     r   get_latest_release_versionz&OperaDriver.get_latest_release_version   sB      $$''$$ % 
 yy{:&&r   c                 r   | j                         }t        d|        | j                  j                  | j	                  |      | j
                        }|j                         d   }dj                  | j                         |      }|D cg c]  }|d   j                  |      s| }}|d   d   S c c}w )zjLike https://github.com/operasoftware/operachromiumdriver/releases/download/v.2.45/operadriver_linux64.zipz&Getting latest opera release info for r   assetsz{0}_{1}r   r   browser_download_url)
get_driver_version_to_downloadr   r   r   tagged_release_urlr   r   formatget_name
startswith)r   os_typedriver_version_to_downloadr   r"   r   assetoutput_dicts           r   get_driver_download_urlz#OperaDriver.get_driver_download_url!   s    %)%H%H%J"45O4PQR  $$''(BC$$ % 
 X&9%Iv)A)A$)GEI I1~455Is   B4&B4c                     | j                   S r   )_latest_release_urlr   s    r   r   zOperaDriver.latest_release_url/   s    '''r   c                 8    | j                   j                  |      S r   )r   r&   )r   versions     r   r%   zOperaDriver.tagged_release_url3   s    %%,,W55r   c                      y)Nopera r0   s    r   get_browser_typezOperaDriver.get_browser_type6   s    r   )__name__
__module____qualname__r
   strr    r-   propertyr   r%   r6   __classcell__)r   s   @r   r   r      s>    3('C '6# 6 ( (6r   r   N)webdriver_manager.core.driverr   webdriver_manager.core.loggerr   r   r5   r   r   <module>r?      s    0 -2& 2r   