
    h                     R    d dl mZ g dZg dZd	dZd Zd dlZd dlZd dlmZ d
dZ	y)    )logger)u   zgadzam sięu
   akceptujęakceptuj
zaakceptujacceptz
accept allu   akceptuję wszystkieu   przejdź dalejconsentagreezgot itu
   potwierdźzok, rozumiemzgodau
   przyjmujęzatwierdzamzezwalamu   wyrażam zgodęu   przyjmuję wszystkieu   przejdź do serwisu)buttonaspanlidivc                 &  K   	 | j                         rt        j                  d       yg d}|D ]  }	 | j                  |      j                  }|j                  d       d{   rM|j                  d       d{    t        j                  d|        | j                  d       d{     y	 t        j                  d
       y7 i7 Q7 "# t        $ r Y w xY w# t        $ r"}t        j                  d|        Y d}~yd}~ww xY ww)z
    Quick dynamic cookie detection with SHORT timeout.
    Tries to find common cookie accept buttons quickly.
    If not found within 5s, fallback to config will handle it.
    uC   ⚠️ Strona została zamknięta przed próbą akceptacji cookies.F)u   button:has-text('Akceptuję')zbutton:has-text('Accept')u   button:has-text('Przejdź')zbutton:has-text('Zgadzam')z[class*='accept']:visiblez[class*='consent']:visible  timeoutNi  u'   ✅ Zaakceptowano cookies dynamicznie: TuD   🛑 Nie znaleziono przycisku cookies dynamicznie - użyję configu.u/   ❌ Krytyczny błąd w dynamic_accept_cookies: )	is_closedr   warninglocatorfirst
is_visibleclickinfowait_for_timeout	Exceptiondebugerror)pager   quick_selectorsselectorelementouter_errors         2/var/www/extractly/link_agregator/utils/cookies.pydynamic_accept_cookiesr&      s    >>NN`a
 (H,,x066 ++D+999!---555KK"I( TU//555	 : ( 	[\ :55   F{mTUs   D%C# D	C# 0C$C%C>C?0C/C0C4C# 5D6C# DCCC	C C# C  C# #	D,D	D	DDc                   K   |j                  d      }|j                  dd      }|j                  d      }	 | j                         rt        j                  d       y|rt        j                  d|        	 | j                  ||       d	{    | j                  |      j                  }|j                          d	{   rL|j                  d
       d	{    t        j                  d|        | j                  d       d	{    yt        j                  d| d       	 y|rt        j                  d|        | j                  d|       }|j                          d	{   dkD  rp|j                  }|j                          d	{   rL|j                  d
       d	{    t        j                  d|        | j                  d       d	{    yy7 Y7 )7 7 # t        $ r%}t        j                  d| d|        Y d	}~yd	}~ww xY w7 7 7 w7 H# t        $ r"}t        j                  d|        Y d	}~yd	}~ww xY ww)uc   
    Próbuje kliknąć cookies po selektorze z ai_config, jeśli dynamicznie się nie udało.
    accept_selectorr   iȯ  accept_textu8   ⚠️ Strona zamknięta przed próbą fallback cookies.Fu0   🔧 Próbuję kliknąć cookie przez selektor: r   N  u*   ✅ Zaakceptowano cookies przez selektor: r   Tu   ⚠️ Element z nie jest widocznyu(   ⚠️ Błąd przy kliku przez selektor z: u-   🔧 Próbuję kliknąć cookie przez tekst: ztext=r   u'   ✅ Zaakceptowano cookies przez tekst: u9   ⚠️ Nie udało się kliknąć cookies przez fallback: )getr   r   r   r   wait_for_selectorr   r   r   r   r   r   count)	r    cookies_configr"   r   r)   r#   er   first_buttons	            r%   fallback_accept_cookiesr1   5   s=     !!"34H  E2G $$]3K X>>NNUVKKJ8*UV[,,Xw,GGG,,x066 ++---!---555KK"LXJ WX//555NN_XJ>P#QR$  KKG}UV\\E+"78F\\^#a'%||%00222&,,T,:::KK"I+ WX//555
 5 H-55  [!I(SUVWUXYZZ  #[ $2:5  XRSTRUVWWXs  5I%H, IH, 9G3 G(2G3 G+G3 G.0G3 G1G3 IG3 -I.AH, /H$0&H, H&H, 0H(10H, !H*"H, &I(G3 +G3 .G3 1G3 3	H!<HH, IH!!H, &H, (H, *H, ,	I5IIIIN)datetimec                   K   |j                  di       }|j                  dd      }|r,t        | |       d{   }|rt        j                  d       yt	        |        d{   }|rt        j                  d       y	 t        j                         j                  d      }t        j                  |d	       t        j                  j                  || d
| d      }t        j                  j                  || d
| d      }| j                  |       d{    | j                          d{   }	t        |dd      5 }
|
j                  |	       ddd       t        j                   d| d|        y7 E7 7 f7 P# 1 sw Y   /xY w# t"        $ r"}t        j                   d|        Y d}~yd}~ww xY ww)zW
    OPTIMIZED: Tries config FIRST (fast), then dynamic detection if config fails.
    cookiessource_nameunknownNu(   ✅ Cookies accepted via config selectoru*   ✅ Cookies accepted via dynamic detectionz%Y%m%d_%H%M%ST)exist_ok_z.pngz.html)pathwzutf-8)encodinguL   ❌ Nie udało się zaakceptować cookies – zapisano:
🖼️ Screenshot: u   
📄 HTML: u*   ‼️ Błąd przy zapisie debug cookies: )r+   r1   r   r   r&   r2   nowstrftimeosmakedirsr9   join
screenshotcontentopenwriter   r   )r    	ai_config	debug_dirr.   r5   clicked	timestampscreenshot_path	html_pathrB   fr/   s               r%   handle_cookiesrL   f   s     ]]9b1N--y9K /nEEKKBC +400G@AGLLN++O<	
I-'',,y[M9+T2RSGGLL{m1YKu,MN	oo?o333&)S73qGGG 4 	detdu  vC  DM  CN  O  	P/ F 1 	4&33  GA!EFFGs   6GE=*G#F $GBF FF 4F5F F#F <G GF F FF 	F>F94G9F>>G)r*   )cookies_debug)
link_agregator.utils.loggerr   COOKIE_KEYWORDSELEMENT_TYPESr&   r1   asyncior>   r2   rL        r%   <module>rT      s3    . 5%P*Z  	 "GrS   