
    Nj3              
           S SK r S SKrS SKrS SKrS SKr\" SS\" S 5      \" S 5      \" S 5      \" S 5      S.5      " 5       r " S	 S
5      r	g)    N_Log c                 T    [         R                  " [        5      R                  U 5      $ N)_logging	getLogger__name__errorms    :C:\xampp\htdocs\CheckFili\Apis\Gencookie\amazon\captcha.py<lambda>r      s    9K9KH9U9[9[\]9^    c                 ^    [         R                  " [        5      R                  U  SU 35      $ )Nz: )r   r   r	   debug)kvs     r   r   r      sd      EM  EW  EW  X`  Ea  Eg  Eg  kl  jm  mo  pq  or  hs  Etr   c                 T    [         R                  " [        5      R                  U 5      $ r   r   r   r	   infor   s    r   r   r      sA      Ya  Yk  Yk  lt  Yu  Yz  Yz  {|  Y}r   c                 T    [         R                  " [        5      R                  U 5      $ r   r   r   s    r   r   r      sA      _g  _q  _q  rz  _{  _@  _@  AB  _Cr   )r
   detailsuccessr   c                   8    \ rS rSrSrSSSS.r\S	S j5       rSrg)
Captcha	   z7AWS WAF aamation captcha solver for curl_cffi sessions.enes)usflexcaflexmxflexc                 
   U[         l        SSKJn  U" US5      nUR	                  SSS05      nU(       a  UR                  SS5      OS	n	[        R                  " S
U5      n
U
(       a  U
S   OS	n
S nU" USS5      nU" USS5      nU" USS5      nU" USS5      nU(       a  UR                  SS5      nU
(       a  U(       d/  [        R                  S[        U
5       S[        U5       S35        g	[        R                  SU5        [        R                  " U
SSUSSSS	S	SS	S.SS9nU R                  U S3SU0SS S!S"S#S$.S%S&9n[        R                  " UR                   R                  S'S(5      5      nUR                  S)5      nU" UR"                  S*S5      nU" UR"                  S+S5      nU" UR"                  S,S5      nU(       a
  U" US-S.5      OS	nU(       a  U(       d  [        R                  S/5        g	U R                  S-U S03S1UR                  S-S5      S2US3US4.S%S59nUR                  5       nUS6   S7   n[        R                  " US6   S8   5      nUR                  S9S5      R                  S:S5      R                  S;S5      R                  SS5      R                  S<S=5      R%                  5       n[        R'                  S>U S?[)        U5       S@35        [         R*                  " SASBU 3USC.5      nUR                  SD5      (       d  [        R                  SE5        g	[        R-                  SFUSD    35        U R/                  S-U SG3USH   USI   SJ   USI   SK   SL.USM   USD   SN[0        R2                  " SOSP5      0S2SQ.S%SR9nUR                  5       nUR                  SS5      (       d  [        R                  ST5        g	[        R-                  SU5        USV   nU R                  U SWU 3UU[        R                  " SSU S3SX.SS9SY.SS S!S"S#S$.S%S&9n [        R                  " U R                   R                  S'S(5      5      n!U!R                  SZ5      n"U"(       d  [        R                  S[5        g	[        R-                  S\5        0 SU	_S]U"_S^S__S`S_SaU_SbSc_SdU=(       d    S_SeSf_SgU_ShSi_SjSk_SlSf_SmU_SnSo_Sp[4        R6                  R                  USq5      _SrU_n#U R/                  U Ss3U#StU[9        U5      SuSvS#SwS3Sx.S%SySz9n$[        R'                  S{U$R:                   35        [        R                  S|[9        U$R<                  5      S	S} 5        U$$ )~u   
Full aamation captcha flow: widget → problem → solve → voucher → cvf verify.
Returns cvf_verify response or None on failure.
r   )BeautifulSoupzhtml.parserinputnamezanti-csrftoken-a2zvalue Nz "data-context":\s*\'({[^\']*})\'c                      U R                  U5      [        U5      -   nXU R                  X#5       $ ! [         a     g f = fr   )indexlen
ValueError)datafirstlastss       r   _betweenCaptcha.solve.<locals>._between    sD    JJu%E
2djj122 s   /2 
??z"data-external-id": ""z1<input type="hidden" name="clientContext" value="z/<input type="hidden" name="verifyToken" value="z4<input type="hidden" name="openid.return_to" value="z&amp;&zMissing captcha data (context=z	, ext_id=)zExternal ID)WAF_ADVERSARIAL_SYNTHETIC_GRID_V2_LEVEL_1zen-USF)
clientDatachallengeTypelocale
externalIdenableHeaderFooterenableBypassMechanismenableModalVieweventTriggeraaExternalTokenforceJsFlushaamationToken),:)
separatorsz/aaut/verify/cvfoptionsz*/*zapplication/jsonemptycorszsame-origin)AcceptContent-TypeSec-Fetch-DestSec-Fetch-ModeSec-Fetch-Site<   )paramsheaderstimeoutzamz-aamation-respz{}clientSideContextz"problem":"z"id":"z<script src="zhttps://z/ait/zMissing captcha widget paramsz/ait/ait/ait/problemvisualzen-us1)kinddomainr8   problemnum_solutions_requiredid)rM   rO   assetstargetimages[]'_ zCaptcha target: z (z images)AwsWafClassificationz	aws:grid:)typequestionrZ   objectszCapSolver returned no objectszCaptcha solved: z/ait/ait/ait/verifyhmac_tagstateivpayload)rf   rg   keysolve_time_millisi  i@  )rd   re   rh   client_solutionmetricsr8   )jsonrO   r   zCaptcha verification failedzCaptcha verifiedcaptcha_voucherz/aaut/verify/cvf/)r7   r,   )contextrD   responsesessionTokenz'No session token after voucher exchangezWAF session token obtainedcvf_aamation_response_tokencvf_captcha_captcha_actionverifyAamationChallengecvf_aamation_error_codeclientContextzopenid.pape.max_auth_age900zopenid.return_tozopenid.identityz2http://specs.openid.net/auth/2.0/identifier_selectzopenid.assoc_handlezopenid.modecheckid_setupzopenid.ns.papez+http://specs.openid.net/extensions/pape/1.0zopenid.claimed_idpageIdz	openid.nsz http://specs.openid.net/auth/2.0languager   verifyTokenz/ap/cvf/verifyz!application/x-www-form-urlencodeddocumentnavigatez?1)rH   OriginRefererrI   rJ   rK   zSec-Fetch-UserzUpgrade-Insecure-RequestsT)r,   rN   rO   allow_redirectszCVF verify: zCVF URLP   )	capsolverapi_keybs4r#   findgetrefindallreplacer   r
   boolr   rl   dumpsloadsrN   textstripr   r*   solver   postrandomrandintr   HANDLE_LANGstrstatus_codeurl)%session	page_textpage_urlbase_domaincapsolver_api_keyassoc_handler#   htmlcsrf_elcsrfdata_contextr0   ext_id
client_ctxverify_token	return_torD   wamzclient_side_ctxrU   cap_idcap_url
cap_domainprobpjrY   rZ   solvrvjvouchervr2amz2
sess_tokencvf_datacvfs%                                        r   r   Captcha.solve   s    .	%Y6))Gf.B%CD+2w{{7B'zz"EyQ*6|AD	 )%<cBi)\^ab
	+\^abY(^`cd	!))'37I6JJ7\8J7K9UYZ`UaTbbcdeM6* **&HV"'%$d#UT
 !" KK;-'78)WAU.%$+`
    jj':DAB''"56166=#6!&&(C0166?C8?FXgz7;D
JJ67 {{Xj\1EF(;(;J(K'&)P
 	  
 YY[Hh'BxL23R(00b9AA#rJRRSVXZ[ccdgilmssu		$VHBs6{m8DEoo*#F8,
 
 wwy!!JJ67'I'789 \\HZL0CD:wK-"W+i:PQe9"9~+V^^D$-GHL
    WWYvvi  JJ45'( &'kk[M):6(C&

!LG9A$ %&M
 .%$+
    zz#++//*=tDEXXn-
JJ@A12
 $
):
 )*C
 &r	

 Z
 '
 	R
 S
 "<
 ?
 K
  !U
 l
 ;
 ++//dC
  <!
& llk].9?!c(m(J+t),S
 t  - 			L 123Is377|CR01
r   r   N)r   )	r	   
__module____qualname____firstlineno____doc__r   staticmethodr   __static_attributes__r   r   r   r   r   	   s+    A $$K [ [r   r   )
rl   r   r   r   loggingr   ra   r   r   r   r   r   r   <module>r      s~      	  FB,/^"_kw  yt  lu  BN  O}  B~  HT  UC  HD  E  F  Hc cr   