
    g8U                         d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlmZm	Z	 d dl
mZ d dlT d dlT d dlmZ edk    rdZndZd	Z	 d
 Z	 d Zd Zd Z	 d Zd Z	 d Zd Z	 d Zd ZdS )    N)datetime	timedelta)Create)*)platformdarwinzD/Users/wsoft/Documents/wsoft.com.mx/carteraplus-automatizador/files/z6/var/www/wsoft.com.mx/carteraplus-automatizador/files/z0https://portal.myallianz.com.mx/web/guest/inicioc                   K   |                      dd          }|                      dd          }|                      dd          }|                      dd          }|                      dd          }|                      dd          }|                      dd          }|d	k    r t          |d
         dd           d {V  dS t          d
|d
         i           d {V  |d         |d<   |d         |d<   |dk    r$t          |d         |d
         d           d {V }t	          |d                    d {V \  }}		 t          dt          |                      t          |          dk    rV|d         d         dk    rD|d          }
t          j        	                    d|
 d          rt          j
        d|
 d           t          |          dk    rt          |d
         dd           d {V  |dk    rd|d         }|d          }
t          ||
           d {V \  }}}t          i |ddd           d {V  t          d
|d
         i           d {V  t          |          dk    r|d         d         dk    s|d         d         d k    rlt          ||
           d {V }|d         }|}||d!<   |d         }|}||d!<   t          j        t#          ||          t%          ||                     d {V  nq|D ]n}t'                                           |d                   }t)          |          r||d!<    |||           d {V  Pt          |d
         d"d           d {V  o|dz   | d<   d| d<   || d<   || d<   || d<   t+          |            d {V  n8t          |d
         d#d           d {V  |durt-          ||           d {V  t          |          dk    rWt          |	          dk    rFt          |d
         d#d           d {V  t/          |d
         |d         d$           d {V  d S d S d S )%NdataFconexionprimeraEjecucionpbrowserpagereconteo   id_tarea	err_bucle)r   statusid_conexionsessioncredenciales)r   r   	subtareaszSUBTAREAS TOTALES    r   funcionverificaLoginSesion../sessions/.jsonsiTocultarNavegadoru   Conexión establecida)loginMessagerefresh   obtenerDocumentoPoliza obtenerDocumentoRecibosYFacturassubtareaerr_f	terminador   r   )getactualizarStatusTareaactualizarConteoUsoTareaobtenerDatosConexionorganizaSubtareasprintlenospathexistsremove actualizarStatusNavegadorAbiertoinicializarPlaywrightenviarMensajeabrirPestanaPlaywrightasynciogatherr#   r$   globalscallableejecutarProcesosAllianzcerrarPlaywrightactualizarFechaLogin)
parametrosr
   r   r   r   r   r   r   subtareasNavegadorsubtareasWhatsappr   r   page2item1data1item2data2itemr   s                      A/var/www/wsoft.com.mx/carteraplus-automatizador/python/allianz.pyr<   r<      s      nnVU33$ nnZ77( nn%7?? nnS%00! nnY66' nnVU33$ nnZ77(!mm
tJ/?;!W!W
Z
ZZZZZZZZ5 JZ0@"BDDDDDDDDD'$y/!&)$~ %)D<O]abl]m+o+oqqqqqqqqH 1B(;BW0X0X*X*X*X*X*X*X'' 8S"46688999	
""!Y'+@@@&(g	5w555	6	6 1
	////000	
!! +$z:JVZ,\,\
^
^^^^^^^^ 	D  01&(g45EwOOOOOOOOa$ ^T^3JW\^^^_________$
D4D&FHHHHHHHHH		 	 A	%	%+=a+@+KOg+g+gk}~  lA  BK  lL  Pr  lr  lr*7G<<<<<<<<e #eeeJ #eeeJNtU++(66         
 % h h$))--Y00G 	h!$z
d##
#
#
#
#
#
#
#
#0Z@P\c2d2dgg
g
g
g
g
g
g
g
g&.lJz%*J!"%&JsO%,Jy%)Jv
!*
-
---------
*$z:JVa,b,b
e
eeeeeeee	Q(((((((((	
""s+<'='='B'B
tJ/?;!W!W
Z
ZZZZZZZZ
d:.>tTaOb d d
f
ffffffffff #"'B'B    c                   K   d}|                     |            d {V  |                    d           d {V  t          d|d         i           d {V  t          j        d           d {V  |                    d           d {V }|                    t                    dk    rt          i |ddd	           d {V  t          d|d         i           d {V  t          ||           d {V }|r]t          d|d         i           d {V  t          |d         |d
         d           d {V  |                     |            d {V  nd}|S )NTnetworkidler   r"   () => window.location.hrefzINICIANDO SESION...r   r    	conectador   r(   F)gotowait_for_load_stater+   r8   sleepevaluatefindurlLoginr6   iniciar_sesionr>   )urlr   r
   continuaOperacion
url_actualsesionIniciadas         rH   validar_inicio_sesionr[   t   s     		#  ///////// JZ0@"BDDDDDDDDDa ]]#?@@@@@@@@*__X##
Z4Z1GVWZZZ
[
[[[[[[[[
"j$z2B$D
F
FFFFFFFF)$55555555N  $
D4D&FHHHHHHHHH Z0@QUVcQd"f"fhhhhhhhhhIIcNN	rI   c                 6  K   d}|d         }|d         d         }|d         d         }t           j                            d| d          rt          j        d| d           |                     d                                           d {V  |                     d                              |           d {V  |                     d	                                           d {V  |                     d	                              |           d {V  |                     d
d                                           d {V  |                     d           d {V }|	                    t                    dk    rSt          i |ddd           d {V  t          j        d           d {V  t          i |ddd           d {V  nD| j                            d| d           d {V  t          i |dddd           d {V  d}|S )NFr   r   campo1campo2r   r   Usuariou   ContraseñabuttonEntrarnamerL   rM   zERROR DE INICIO DE SESION.r   rN    )r1   r   T)r    rO   saveSession)r0   r1   r2   r3   get_by_placeholderclickfillget_by_rolerS   rT   rU   r6   r8   rR   contextstorage_state)r   r
   rZ   r   usuariopasswordrY   s          rH   rV   rV      s     .&''1''1( W^^1711122 -I+W+++,,,	**00222222222	**//888888888..44666666666..33H=========1177999999999]]#?@@@@@@@@*__X##
a4a1N]^aaa
b
bbbbbbbb
-


F4F!FFF
G
GGGGGGGGG ,
$
$*G*G*G*G
$
H
HHHHHHHH
Z4Z!TXZZZ
[
[[[[[[[[N	rI   c                   K   t          i |d|d         dd           d {V  t          d| |           d {V }|rlt          |d         |d         d           d {V  t          i |d|d         dd           d {V  t          |d	         d
         dd           d {V  nGt          i |d|d         dd           d {V  t          |d	         d
         dd           d {V  |                                  d {V  d S )NTr   u   Intentando iniciar sesión)login_intentor   mensajez https://portal.myallianz.com.mx/r   r(   u   ¡Sesión validada con éxito!r%   _idr'   rq   r   zDatos incorrectos)r6   r[   r>   actualizarStatusSubtareapause)r   r
   rX   s      rH   r   r      s       D  DT-EX  fB  D  D  D  	E  	E  E  E  E  E  E  E  E12TVZ\`aaaaaaaa `
d:.>tTaOb d d
f
ffffffff
  J4  J$tMGZ  hH  J  J  J  K  K  K  K  K  K  K  K  K
"T*-=e-DP[$]$]
_
_________ |4|$tMGZgz|||
}
}}}}}}}}
"T*-=e-DP[$]$]
_
________

rI   c                   K   t          |d         d         dd           d {V  t          d| |           d {V }|r/t          i |ddd           d {V  |                     d	           d {V  |                     d
           d {V  t          j        d           d {V  |                     d                                           d {V  | 	                    d           d {V  |                     d          
                    d           d {V  | 	                    d           d {V  |                     d          
                    d           d {V  t          j        d           d {V  |                     dd                                           d {V  t          j        d           d {V  |                     dd                              d           d {V  |                                 4 d {V }|                     dd          }|                                 d {V  	 |j         d {V }t           |d          d}|                    |           d {V  t          i |ddi           d {V  t          j        d           d {V  t          i |ddi           d {V  t          j        d           d {V  t          i |ddd           d {V  t!          ||           d {V  n&# t"          $ r}t%          d            Y d }~nd }~ww xY wd d d           d {V  d S # 1 d {V swxY w Y   d S d S )!Nr%   rq   iniciadorr   z?https://distribuidores.axa.com.mx/group/distribucion/disclaimerzObteniendo recibos pagadosr"   rN   zAhttps://distribuidores.axa.com.mx/group/distribucion/estadoCuentarK   r   z+table tbody tr:first-child td:first-child azx[id="_DLFR228_Estado_De_Cuenta_Comisiones_WAR_DLFR228_Estado_De_Cuenta_Comisiones_\:formSelectorAgtPrm\:selectorFechas"]2024zu[id="_DLFR228_Estado_De_Cuenta_Comisiones_WAR_DLFR228_Estado_De_Cuenta_Comisiones_\:formSelectorAgtPrmMes\:j_idt105"]Mayor`   	Consultarrb   linkDetallei`[ )timeoutExcelr   _pagadasr       Procesando informaciónActualizando sistema   rd   ERROR)rs   r[   r6   rP   rQ   r8   rR   locatorrg   wait_for_selectorselect_optionri   expect_downloadvalueRUTA_FOLDERsave_asleerExcelPagadas	Exceptionr.   )r   r
   rX   download_infoenlacedownloadrutaArchivoes           rH   exportarReportePagadasr      s      4
+;E+Bj"Z"Z\\\\\\\\\12suy{  A  A  A  A  A  A  A  A #
a4a1N]^aaa
b
bbbbbbbb
))W
X
XXXXXXXX

"
"=
1
11111111
-


 ,,D
E
E
K
K
M
MMMMMMMM

 
   "`  a  a  a  a  a  a  a  a  a
,,  V  W  W  e  e  fl  m  m  m  m  m  m  m  m  m

 
   "]  ^  ^  ^  ^  ^  ^  ^  ^  ^
,,  S  T  T  b  b  ci  j  j  j  j  j  j  j  j  j
-




8+

6
6
<
<
>
>>>>>>>>
-




6	

2
2
8
8
8
H
HHHHHHHH##%%       w77fLLNN&,,,,,,,$?d9o???{+++++++++RtR^5ORRSSSSSSSSSmAPtP^5LPPQQQQQQQQQmAJtJRaJJJKKKKKKKKKt[1111111111   g                             +# #s=   2MCL$#M$
M.M=MMM
M'*M'c                   K   t          j        |d           }d }t          t          |                    D ]}d|j        |         j        v r|} n|t          d          |j        |         |_        ||dz   d                              d          }|	                    t                    }g }|                                D ]\  }}|                                                                s	d|j        v r nN|j        d         d	k    rJi d
dd| d         d         d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d |j        d!         d"|j        d#         d$|j        d%         d&|j        d'         d(|j        d)         |j        d*         |j        d+         |j        d,         |j        d-         |j        d.         d/}|                    |           t          i | dd0|d1dd2           d {V  t!          d3| d3         i           d {V  t#          | d4         d0|id5           d {V }	t%          | d6         d7         d8d9           d {V  t'          j        |           d S ):N)headerMonedau(   No se encontró la cabecera con 'Moneda'r   T)droprd   r   nancompaniaaxaclave_agenter   monedar   ramoasegurado_conceptor"   poliza_descripcionrecibo_ano_vigor   diar   contable_comprobante   caja_comprobante   
neta_prima   total_prima	   s_prima_comision
   derechos_comision   recargos_comision   total_comision   importe                  )iva_acreditadoiva_retenidoimpuesto_cedularisr
total_pagoarrAxaPagadasoptarrmostrar_datosarrayexcelProcesador   r   r   reportesr%   rq   r'   rr   )pandas
read_excelranger/   ilocvalues
ValueErrorcolumnsreset_indexastypestriterrowsisnullanyappendr6   r+   registrarRecibosrs   r0   r3   )
r
   r   df
header_rowidatos_rowregistrorespuestaReciboss
             rH   r   r      s     T222" *R>>  a271:$$$je % 
?
@
@@ wz""*	*q.//&&D&11" 
yy~~" % ! !fa
zz|| R3:--e
x{e%d>*>:  chqk	
 CHQK CHQK #(1+ SXa[ chqk #(1+ CHQK SXa[ #(2, 38B< 38B<  !" "#$ hrl(2,Xb\HRL-  H2 
LL 	  C  C`e?h?h  }A  C  C  C  	D  	D  D  D  D  D  D  D  D JZ0@"BDDDDDDDDD+d=>Qaprw_y-{-{}}}}}}}} 4
+;E+Bk"["[]]]]]]]]])KrI   c                   K   t            |d          d}t          |d         d         dd           d {V  t          ||           d {V  t          j        d           t          d| |           d {V }|rt          i |d	d
d           d {V  |                     d           d {V  t          j	        d
           d {V  | 
                    dd                                           d {V  |                     d                              d           d {V  |                     d                              d           d {V  t          j	        d           d {V  |                     d                                           d {V  t          j	        d           d {V  |                                 4 d {V }| 
                    dd                                           d {V  	 |j         d {V }t            |d          d}|                    |           d {V  t          i |ddi           d {V  t          j	        d           d {V  t          i |ddi           d {V  t          j	        d           d {V  t          i |ddd           d {V  t          ||           d {V  nK# t$          $ r>}t'          d|           t          |d         d         dd           d {V  Y d }~nd }~ww xY wd d d           d {V  d S # 1 d {V swxY w Y   d S d S )Nr   	_porpagarr%   rq   rv   rr   r   z6https://portal.myallianz.com.mx/agentes/ords/f?p=110:2zObteniendo recibos por pagarr"   rN   rK   headingu   Pólizas activasrb   zSkip to Main Content PortalTabu0   Visualización de Datos: Donut: Pólizas activasEnterr   zSeleccionar todos - TODOS :r`   zDescargar CSVr    r   r   r   rd   r   r&   )r   rs   leerExcelPorPagarsysexitr[   r6   rQ   r8   rR   ri   rg   get_by_textpressget_by_labelr   r   r   r   r.   )r   r
   r   rX   r   r   r   s          rH   exportarReportePorPagarr   =  sJ     :Y:::+ 4
+;E+Bj"Z"Z\\\\\\\\\$,,,,,,,,,(1+++12jlprvwwwwwwww `
c4c1P_`ccc
d
dddddddd

"
"=
1
11111111
-




9+=

>
>
D
D
F
FFFFFFFF


8
9
9
?
?
F
FFFFFFFF


N
O
O
U
UV]
^
^^^^^^^^
-




8
9
9
?
?
A
AAAAAAAA
-

##%% ` ` ` ` ` ` `XO<<BBDDDDDDDDD`&,,,,,,,$@d9o@@@{+++++++++RtR^5ORRSSSSSSSSSmAPtP^5LPPQQQQQQQQQmAJtJRaJJJKKKKKKKKKk2222222222 ` ` `gq&j1A%1HT[(](]______________`` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `` `s=   0L:CKL:
L$&4LL:L$$L::
MMc                 $  K   t          |d          5 }t          j        |                                          }d d d            n# 1 swxY w Y   t	          j        ||d                   }|                    t                    }g }|                                D ]\  }}i ddd| d         d         d|j	        d	         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d|j	        d         
                    d
d          d |j	        d!         
                    d
d          d"|j	        d#         
                    d
d          d$|j	        d%         
                    d
d          d&|j	        d'         
                    d
d          |j	        d(         
                    d
d          |j	        d)         
                    d
d          |j	        d*         
                    d
d          |j	        d+         
                    d
d          |j	        d,         
                    d
d          |j	        d-         
                    d
d          d.}|                    |           t          i | d/d0|d1d/d2           d {V  t          d3| d3         i           d {V  t          | d4         d0|id5           d {V }	t          | d6         d7         d8d9           d {V  d S ):Nrbencoding)r   r   allianzr   r   emisorr   'rd   polizar   contratanter"   r   r   
prima_netar   prima_totalr   periodicidadr   inicio_vigenciar   serie_recibor   no_solicitudr   plazo_comprometidor   "aportaciones_comprometidas_pagadasr   aportaciones_iniciales_pagadasr   monto_aportacionesr   aportaciones_esperadasr   r   r   r   r   r      )periodoconducto_cobrorespuesta_bancoultima_fecha_pagoproxima_fecha_cobrou   dìas_atrasoTarrAllianzPorPagarr   r   r   r   r   r%   rq   r'   rr   )openchardetdetectreadr   read_csvr   r   r   r   replacer   r6   r+   r   rs   )
r
   r   fresultr   r   r   r   r   r   s
             rH   r   r   i  s      K (!~affhh''f( ( ( ( ( ( ( ( ( ( ( ( ( ( (
 fZ.@BBB" 
yy~~" % ! !fa)d>*>: !1D1DS"1M1M !1D1DS"1M1M !1D1DS"1M1M !1D1DS"1M1M !1D1DS"1M1M !1D1DS"1M1M !1D1DS"1M1M !1D1DS"1M1M !1D1DS"1M1M !1D1DS"1M1M  "1E1Ec21N1N!" +"1E1Ec21N1N#$ '"1E1Ec21N1N%& "1E1Ec21N1N'( "1E1Ec21N1N)* 25"1E1Ec21N1N14"1E1Ec21N1N14"1E1Ec21N1N14"1E1Ec21N1N14"1E1Ec21N1N25(2,2F2FsB2O2O5  H: 
LL  H  HH\ej?m?m  BF  H  H  H  	I  	I  I  I  I  I  I  I  I JZ0@"BDDDDDDDDD+d=>Qauw|_~  .A  .A  C  C  C  C  C  C  C  C 4
+;E+Bk"["[]]]]]]]]]]]s   'AA
A
c                 `  K   t          |d         d         dd           d {V  t          d| |           d {V }|rmt          i |ddd           d {V  t          d	|d	         i           d {V  |                     d
                              d           d {V  |                     d           d {V  |                     d                              |d         d                    d {V  |                     d                                           d {V  |                                 4 d {V }	 |j	         d {V }|
                    d           d {V  t          j        d           d {V  |                    d           d {V }t          j        d|          }|rg|                    d          }|j                            d|            d {V }|d          d|d         d          d}	t&           |	 }
t)          |
d          5 }|                    |                                 d {V            t/          t&           |	 |	           d {V  t          i |dddd|d         d         |d         d         |	dd           d {V  t          d	|d	         i           d {V  t          |d         d         dd           d {V  |                                 d {V  d d d            n# 1 swxY w Y   ne# t2          $ rX}t5          d|           |                     d                                           d {V }|rt5          d            Y d }~nd }~ww xY wd d d           d {V  d S # 1 d {V swxY w Y   d S d S )!Nr%   rq   rv   rr   z4https://distribuidores.axa.com.mx/group/distribucionu   Obteniendo póliza y recibosr"   rN   r   z(select[id*=":selectTipoDocEcmTabPoliza"]u   Carátula de Pólizazinput[id*=":numeroPolizaWgECM"]numero_polizaz!a[id*=":btnConsultaPolEcmPoliza"]rK   z() => {
            const element = document.querySelector('a[onclick*="window.open"]');
            return element ? element.getAttribute('onclick') : '';
        }zwindow.open\('([^']*)'r   zhttps://portal.axa.com.mx/r   _poliza_z.pdfwbrd   Ttype)r   r  r  nombre_numero_poliza)r    rO   r   descargar'   ERz.portlet-msg-erroruF   El elemento con class='portlet-msg-error' está visible en la página.)rs   r[   r6   r+   r   r   rg   rh   expect_popupr   rQ   r8   rR   rS   researchgrouprequestr)   r   r  writebodysubirArchivoAS3closer   r.   
is_visible)r   r
   rX   
page1_infopage1onclick_valuematchrW   responsenombrePolizar   r
  r   r  s                 rH   r#   r#     s2      4
+;E+Bj"Z"Z\\\\\\\\\12hjnptuuuuuuuu (Z
c4c1P_`ccc
d
dddddddd
"j$z2B$D
F
FFFFFFFF
,,A
B
B
P
PQg
h
hhhhhhhh
**6
7
77777777
,,8
9
9
>
>tJ?OP_?`
a
aaaaaaaa
,,:
;
;
A
A
C
CCCCCCCC  "" Z Z Z Z Z Z ZjZ &&&&&&&''666666666mA $nn .         	3]CC 	"++a..C"]../QC/Q/QRRRRRRRRH"9o^^tJ7G7X^^^L(8,88Kk4(( "AggHMMOO++++++,,,#{$BL$B$BLQQQQQQQQQ!  #~T  #~2A`d{}  HL  MW  HX  Y_  H`  sw  xB  sC  DS  sT  nz  s|  s|  #~  #~  #~                  ,
D<L.NPPPPPPPPP,tJ7G7NZe.g.giiiiiiiiiKKMM!!!!!!!" " " " " " " " " " " " " " "  Z Z ZdA<<(<==HHJJJJJJJJ
 	Z
X
Y
Y
Y	Z7Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z(Z (Zsc   NC"L#(C#LL#L	L#L	L#"N#
N-AN ;N NN
N%(N%c                 
   K   i S )N )r   r
   s     rH   obtenerDatosClienter&    s      	)rI   )r8   r0   r   globrequestsr  r   r  r   r   WPP_Whatsappr   utilslectoresr   r   rU   r<   r[   rV   r   r   r   r   r   r#   r&  r%  rI   rH   <module>r,     s   < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < ( ( ( ( ( ( ( (                    xV++H+=[g [g [g|  0  8  *& & &RD D DN$` $` $`X6^ 6^ 6^~+Z +Z +Z\    rI   