
    g                     j    d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ  G d d	e      Zy)
    N)Optional)DownloadManager)DriverCacheManager)DriverManager)OperationSystemManager)GeckoDriverc                        e Zd Z	 	 	 	 	 	 	 	 ddee   dededededee   dee   dee   f fd	Zd
efdZ	 fdZ
 xZS )GeckoDriverManagerversionnameurllatest_release_urlmozila_release_tagdownload_managercache_manageros_system_managerc	           	      r    t         t        |   ||       t        |||||| j                  |      | _        y )N)r   r   )driver_versionr   r   r   r   http_clientr   )superr
   __init__r   r   driver)
selfr   r   r   r   r   r   r   r   	__class__s
            L/var/www/html/venv/lib/python3.12/site-packages/webdriver_manager/firefox.pyr   zGeckoDriverManager.__init__   sI     	 $0-' 	1 	

 ""11((/
    returnc                 h    | j                  | j                        }t        j                  |d       |S )Ni  )_get_driver_binary_pathr   oschmod)r   driver_paths     r   installzGeckoDriverManager.install&   s*    224;;?
e$r   c                     t         |          }| j                  j                  |      s|S d}| j                  j	                  |      r| dS |S )Nmacosz-aarch64)r   get_os_type_os_system_manager	is_mac_osis_arch)r   os_typer%   r   s      r   r&   zGeckoDriverManager.get_os_type+   sT    '%'&&009N""**73WH%%r   )Ngeckodriverz8https://github.com/mozilla/geckodriver/releases/downloadz@https://api.github.com/repos/mozilla/geckodriver/releases/latestzBhttps://api.github.com/repos/mozilla/geckodriver/releases/tags/{0}NNN)__name__
__module____qualname__r   strr   r   r   r   r#   r&   __classcell__)r   s   @r   r
   r
      s     &*%Q&h&j:>:>BF
c]
 
 	

 !$
 !$
 '7
 $$67
  ((>?
4 
 r   r
   )r    typingr   'webdriver_manager.core.download_managerr   #webdriver_manager.core.driver_cacher   webdriver_manager.core.managerr   !webdriver_manager.core.os_managerr   !webdriver_manager.drivers.firefoxr   r
    r   r   <module>r8      s&    	  C B 8 D 9( (r   