ó
    äHéi,  ã                   óP   • S SK r S SKrS SKrS SKJr  SrSrSrS rS
S jrS r	S	 r
g)é    N)Údatetimezdhttps://autogestion-empresas.claro.com.ar/sites/launchpad#zcrm0204gestionesgeneraleslineas-Display&/zSapplication-zcrm0204gestionesgeneraleslineas-Display-component---Menu--input_cuentazUapplication-zcrm0204gestionesgeneraleslineas-Display-component---Menu--inpLinea-innerc           	   ƒ   ó(  #   • U R                  S[         S35      nUR                  S5      I S h  v•N nU(       a  X;   a  [        SU 35        g[        S5        U R	                  S[         S35      I S h  v•N nU(       a  UR                  5       I S h  v•N   O U R                  S[         35      I S h  v•N   [        R                  " S5      I S h  v•N   / S	QnU H»  nU R                  U5      I S h  v•N nU(       d  M%  [        S
U S[        U5       S35        U Hu  nUR                  5       I S h  v•N n	X;   d  M"  UR                  5       I S h  v•N   [        R                  " S5      I S h  v•N   [        SU	R                  5        35            g     O   UR                  S5      I S h  v•N n
U
(       a  [        SU
 S35        g[        SU S35        U R                  SS9I S h  v•N   g GNÆ GN‚ GNf GNH GN- GN NÏ N² N– NZ N7f)NÚ#z-innerÚvaluez  Cuenta ya seleccionada: TzAbriendo dropdown cuenta...z .sapMInputBaseIconContaineré   )ú[role='option']z[role='listitem']z.sapMSelectListItemz.sapMListTbl trz.sapMLIBContentz  Encontrado con 'z': ú itemsz  Cuenta seleccionada: z  Cuenta en campo: z (usando valor existente)z	  Cuenta z no encontradazerror_cuenta.png©ÚpathF)ÚlocatorÚ	ID_CUENTAÚget_attributeÚprintÚquery_selectorÚclickÚasyncioÚsleepÚquery_selector_allÚlenÚ
inner_textÚstripÚ
screenshot)ÚpageÚnumero_cuentaÚinput_cuentaÚvalor_actualÚboton_dropdownÚ
selectoresÚselectorÚitemsÚitemÚtextoÚvalors              Úc:\claro-bot\claro\extractor.pyÚseleccionar_cuentar%      sÚ  é € à—<‘< !¤I ;¨fÐ 5Ó6€LØ%×3Ñ3°GÓ<×<€Læ˜Ó5ÜÐ*¨<¨.Ð9Ô:Øä	Ð'Ô)Ø×.Ñ.°´9°+Ð=YÐ/ZÓ[×[€NÞØ×"Ñ"Ó$×$Ñ$à�j‰j˜1œY˜K˜Ó)×)Ð)ä
�-Š-˜Ó
×Ðò€Jó ˆØ×-Ñ-¨hÓ7×7ˆßˆ5ÜÐ& x j°´C¸³J°<¸vÐFÔGÛ�Ø"Ÿo™oÓ/×/�Ø Õ)ØŸ*™*›,×&Ð&Ü!Ÿ-š-¨Ó*×*Ð*ÜÐ3°E·K±K³M°?ÐCÔDÚñ ñ ñ ð ×,Ñ,¨WÓ5×5€EÞÜÐ# E 7Ð*CÐDÔEØä	ˆI�m�_ NÐ
3Ô4Ø
�/‰/Ð1ˆ/Ð
2×2Ð2ØòY =ò \â$â)âò 8ñ 0á&Ù*ñ 6ñ 3ùsÐ   ‚.H°G6±AHÁ7G9Á8HÂG<Â HÂ7G?Â8HÃHÃ!HÃ7HÃ8	HÄ3HÄ8HÄ9HÅHÅH
ÅHÅ5HÅ6=HÆ3HÆ4<HÇ0HÇ1HÇ9HÇ<HÇ?HÈHÈHÈHÈ
HÈHÈHÈHc              ƒ   óê  #   • U(       aE  [        S5        U R                  [        SS9I S h  v•N   [        R                  " S5      I S h  v•N   [        X5      I S h  v•N nU(       d  g[        SU 35        U R                  S[         35      nUR                  5       I S h  v•N   [        R                  " S5      I S h  v•N   U R                  R                  S	5      I S h  v•N   U R                  R                  US
S9I S h  v•N   [        S5        / SQn/ n[        S5       HU  nU H%  n	U R                  U	5      I S h  v•N nU(       d  M%    O   U(       a    O"[        R                  " S5      I S h  v•N   MW     U(       d#  U R                  SS9I S h  v•N   [        S5        g[        S[        U5       S35        U Hy  n
U
R!                  5       I S h  v•N nX+;   d  M"  U R#                  SU
5      I S h  v•N   [        R                  " S5      I S h  v•N   [        SUR%                  5       S S  35          g   [        SU S35        g GN% GN
 GNú GN· GNœ GN| GN] GN# Nñ NÑ N’ Ns NW7f)Nz"Navegando a Gestiones en Lineas...Údomcontentloaded)Ú
wait_untilé   FzIngresando linea: r   g333333Ó?z	Control+aé2   )Údelayz#  Esperando lista de sugerencias...)z.sapMSuggestionItemz.sapMSuggPopover lir   z.sapMLIBz.sapMSLIé
   g      à?zdebug_linea.pngr
   z'  Sin sugerencias - ver debug_linea.pngz  Lista aparecio con r	   a  el => {
                el.dispatchEvent(new MouseEvent('mousedown', {bubbles: true}));
                el.dispatchEvent(new MouseEvent('mouseup',   {bubbles: true}));
                el.dispatchEvent(new MouseEvent('click',     {bubbles: true}));
            }é   z  Linea seleccionada: é<   Tz  Linea z no encontrada en la lista)r   ÚgotoÚURL_CONSUMOr   r   r%   r   ÚID_LINEA_INPUTr   ÚkeyboardÚpressÚtypeÚranger   r   r   r   Úevaluater   )r   r   Únumero_lineaÚprimera_vezÚokÚinput_lineaÚselectores_sugr    Úintentor   r!   r"   s               r$   Úseleccionar_linear=   >   s6  é € ÞÜÐ2Ô4Ø�i‰iœÐ0BˆiÐC×CÐCÜ�mŠm˜AÓ×Ðä! $Ó6×	6€BÞØä	Ð˜|˜nÐ
-Ô.Ø—,‘, ¤>Ð"2Ð3Ó4€Kà
×
Ñ
Ó
×ÐÜ
�-Š-˜Ó
×ÐØ
�-‰-×
Ñ
˜kÓ
*×*Ð*ð �-‰-×
Ñ
˜\°Ð
Ð
4×4Ð4ô 
Ð
/Ô0ò€Nð €EÜ˜–9ˆÛ&ˆHØ×1Ñ1°(Ó;×;ˆEßˆuÙñ 'ö ÙÜ�mŠm˜CÓ × Ò ñ ö Ø�o‰oÐ#4ˆoÐ5×5Ð5ÜÐ7Ô8Øä	Ð!¤# e£* ¨VÐ
4Ô5ãˆØ—o‘oÓ'×'ˆØÕ Ø—-‘-ð !ð ó	÷ ð ô
 —-’- Ó"×"Ð"ÜÐ*¨5¯;©;«=¸¸"Ð+=Ð*>Ð?Ô@Ùñ ô 
ˆH�\�NÐ"<Ð
=Ô>Øòs 	DÚâ	6ò ÚÚ*ò 5ò <ñ
 	!ñ 	6ñ (ññ
 #ùsõ   ‚*I3¬I­I3Á
IÁI3ÁIÁAI3Â#IÂ$I3ÃIÃ"I3Ã$I Ã%!I3ÄI#Ä<I3ÅI&Å	I3Å&I3Å7I)Å8!I3ÆI+ÆA I3ÇI-ÇI3Ç&I3Ç;I/Ç<I3ÈI1È8I3ÉI3ÉI3ÉI3ÉI3É I3É#I3É&I3É)I3É+I3É-I3É/I3É1I3c              ƒ   ó@  #   • [        S5        / SQnSnU H†  n U R                  U5      R                  nUR                  5       I S h  v•N nU(       aH  UR	                  5       I S h  v•N   [
        R                  " S5      I S h  v•N   [        SU 35        Sn  OMˆ     U(       dy   U R                  S5      R                  U R                  S5      S	9R                  R	                  5       I S h  v•N   [
        R                  " S5      I S h  v•N   Sn[        S
5        U R                  S5      I S h  v•N n[        S[        U5       35        / nU GH@  n	 U	R                  S5      I S h  v•N n
U	R                  S5      I S h  v•N nU	R                  S5      I S h  v•N nU	R                  S5      I S h  v•N nU
(       a  U
R                  5       I S h  v•N OSnU(       a  UR                  5       I S h  v•N OSnU(       a  UR                  5       I S h  v•N OSnU(       a  UR                  5       I S h  v•N OSn[        R                  " 5       R                  S5      UUUUUS.nUR!                  U5        [        SU SU SU SU 35        GMC     U$  GNS GN7 GN!    GM”  = f GN½ GN¢!   U R                  SS9I S h  v•N    [        S5        / s $ = f GN« GNu GN_ GNI GN3 GN Nø NÙ Nº! ["         a  n[        SU 35         S nAGMÂ  S nAff = f7f)Nz Navegando a Saldos y Consumos...)z+.sapMSLITitle:has-text('Saldos y Consumos')z'.sapMText:has-text('Saldos y Consumos')z li:has-text('Saldos y Consumos')z*.sapMNavItem:has-text('Saldos y Consumos')z[title='Saldos y Consumos']Fr)   z  Menu clickeado con: Tztext=Saldos y Consumosz:visible)Úhasz#  Menu clickeado con filtro visiblezdebug_menu.pngr
   z/  No se pudo clickear menu - ver debug_menu.pngz.zBloqueBordeRedondeadozBloques encontrados: z.sapMTitle spanz.sapSuiteRMCInsideLabelz.sapMObjectIdentifierText spanÚbdiz
Sin titulozN/Az%Y-%m-%d %H:%M)ÚfechaÚlineaÚtituloÚporcentaje_usadoÚdetalleÚ
renovacionz  z: z | z  Error en bloque: )r   r   ÚfirstÚ
is_visibler   r   r   Úfilterr   r   r   r   r   r   ÚnowÚstrftimeÚappendÚ	Exception)r   r7   Úselectores_menuÚ	clickeador   ÚelementoÚvisibleÚbloquesÚ
resultadosÚbloqueÚ	titulo_elÚpct_elÚ
detalle_elÚrenovacion_elrC   Ú
porcentajerE   rF   r!   Úes                       r$   Úextraer_bloquesr[   |   sØ  é € Ü	Ð,Ô.ò€Oð €IÛ#ˆð
	Ø—|‘| HÓ-×3Ñ3ˆHØ$×/Ñ/Ó1×1ˆGÞØ—n‘nÓ&×&Ð&Ü—m’m AÓ&×&Ð&ÜÐ.¨x¨jÐ9Ô:Ø �	Ùñ ñ	 $ö ð	Ø—,‘,Ð7Ó8×?Ñ?ÀDÇLÁLÐQ[ÓD\Ð?Ð]×cÑc×iÑiÓk×kÐkÜ—-’- Ó"×"Ð"ØˆIÜÐ7Ô8ð ×+Ñ+Ð,EÓF×F€GÜ	Ð!¤# g£, Ð
0Ô1à€Jäˆð	-Ø"(×"7Ñ"7Ð8IÓ"J×JˆIØ"(×"7Ñ"7Ð8QÓ"R×RˆFØ"(×"7Ñ"7Ð8XÓ"Y×YˆJØ"(×"7Ñ"7¸Ó">×>ˆMæ=F˜y×3Ñ3Ó5×5Ð5ÐP\ˆFÞ=C˜v×0Ñ0Ó2×2Ð2ÐPUˆJÞ=G˜z×4Ñ4Ó6×6Ð6ÐPUˆGÞ=J˜}×7Ñ7Ó9×9Ð9ÐPUˆJô %-§L¢L£N×$;Ñ$;Ð<LÓ$MØ$0Ø$*Ø$.Ø$+Ø$.ñˆDð ×Ñ˜dÔ#Ü�B�v�h˜b  ¨C°¨y¸¸J¸<ÐH×Iñ+ ð4 Ðòk 2â&Ú&øð	Ûúò
 lÚ"øð	Ø—/‘/Ð'7�/Ð8×8Ñ8ÜÐCÔDØŠIúâFò KÚRÚYÚ>â5Ù2Ù6Ù9øô ó 	-ÜÐ'¨ sÐ+×,Ó,ûð	-üsb  ‚Lš.J$ÁJÁ	J$Á'JÁ(J$ÂJ!ÂJ$ÂLÂ(AJ3 Ã0J-Ã1J3 ÄJ0ÄJ3 Ä LÄ4KÄ5#LÅK7Å-K"Å.K7ÆK%ÆK7ÆK(Æ K7Æ8K+Æ9K7ÇK.Ç K7Ç8K1Ç9 K7ÈK3È K7È:K5È;AK7ÊLÊJ$ÊJ$Ê!J$Ê$J*Ê&LÊ-J3 Ê0J3 Ê3KËK
ËKËLË"K7Ë%K7Ë(K7Ë+K7Ë.K7Ë1K7Ë3K7Ë5K7Ë7
LÌLÌLÌLÌLc                 óÔ  • U (       d  [        S5        g [        SSSS9 n[        R                  " XSSS9  S S S 5        [        S	SS
SS9 n[        R
                  " XS   R                  5       S9nUR                  5         UR                  U 5        S S S 5        [        S[        U 5       S35        [        S5        [        S5        g ! , (       d  f       N˜= f! , (       d  f       NN= f)NzSin resultados para guardarzconsumo_todas.jsonÚwzutf-8)ÚencodingFr   )Úensure_asciiÚindentzconsumo_todas.csvÚ )Únewliner^   r   )Ú
fieldnamesz
Listo. z registros guardados.z  -> consumo_todas.jsonz  -> consumo_todas.csv)
r   ÚopenÚjsonÚdumpÚcsvÚ
DictWriterÚkeysÚwriteheaderÚ	writerowsr   )rS   ÚfÚwriters      r$   Úguardar_resultadosrn   Ã   sÃ   € ÞÜÐ+Ô,Øô 
Ð" C°'Ò	:¸aÜ�	Š	�*¨e¸AÒ>÷ 
;ô 
Ð! 3°¸WÒ	EÈÜ—’ ¸©m×.@Ñ.@Ó.BÑCˆØ×ÑÔØ×Ñ˜Ô$÷ 
Fô
 
ˆI”c˜*“oÐ&Ð&;Ð
<Ô=Ü	Ð#Ô%Ü	Ð"Õ$÷ 
;Õ	:ú÷ 
FÕ	Eús   ŸCÁ
ACÃ
CÃ
C')F)r   re   rg   r   r0   r   r1   r%   r=   r[   rn   © ó    r$   Ú<module>rq      s8   ðã Û Û 
Ý àw€Øf€	Øh€ò/ôd<ò|EóN%rp   