
    'hH                         d dl Z d dlmZ 	 d dlZd dlmZ d dl	m
Z
 d dlmZ  e j                  e      Z G d deeej                         Zej"                  Zy# e$ rZ ed      edZ[ww xY w)	    N)DesiredCapabilitieszYundetected_chromedriver not found. Install it with `pip install undetected_chromedriver`.)InspectRequestsMixin)urlsafe_address)DriverCommonMixinc                   (     e Zd ZdZdd fd
Z xZS )ChromeziExtends the undetected_chrome Chrome webdriver to provide additional
    methods for inspecting requests.N)seleniumwire_optionsc          	      X   |i }| j                  |      }|j                  dd      rI|j                  d      }|t        j                  }|j	                         }|j                  |       ||d<   	 |d   }t        j                  d       t        | j                  j                               \  }}|j                  d| d|        |j                  d	d
j                  |j                  ddg                    ||d<   t        	| @  |i | y# t        $ r t               }Y w xY w)zInitialise a new Chrome WebDriver instance.

        Args:
            seleniumwire_options: The seleniumwire options dictionary.
        Nauto_configTdesired_capabilitiesoptionszUsing undetected_chromedriverz--proxy-server=:z--proxy-bypass-list=,exclude_hostsz<-loopback>)_setup_backendgetr   CHROMEcopyupdateKeyErrorChromeOptionsloginfor   backendaddressadd_argumentjoinsuper__init__)
selfr	   argskwargsconfigcapabilitieschrome_optionsaddrport	__class__s
            n/var/www/html/scrapers/gsc/venv/lib/python3.12/site-packages/seleniumwire/undetected_chromedriver/webdriver.pyr   zChrome.__init__   s9     '#% $$%9:##M48!::&<=L#299',,.L'-9F)*	-#I.N 	01 %T\\%9%9%;<
d##odV1TF$CD##"388,@,D,D_WdVe,f#g"hi	
 +y$)&)  	-*_N	-s   3D D)(D))__name__
__module____qualname____doc__r   __classcell__)r(   s   @r)   r   r      s    ( 48 &* &*    r   )loggingselenium.webdriverr   undetected_chromedriverucImportErroreseleniumwire.inspectr   seleniumwire.utilsr   seleniumwire.webdriverr   	getLoggerr*   r   r   r    r/   r)   <module>r;      sz     2( 6 . 4g!**!#4bii **Z   s  
fs   A A+	A&&A+