+
    9dKj"                     d   R t ^ RIt^ RIt^ RIt^ RIt^ RItRtR] R2tRt. RNRNRNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"NR#NR$NR%NR&NR'NR(NR)NR*NR+NR,NR-NR.NR/NR0NR1NR2NR3NR4NR5NR6NR7Nt	. R8NR9NR:NR;NR<NR=NR>NR?NR@NRANRBNRCNRDNRENRFNRGNRHNRINRJNRKNRLNRMNRNNRONRPNRQNRRNRSNRTNRUNRVNRWNRXNRYNRZNR[NR\NR]NR^NR_NR`NRaNRbNRcNRdNReNRfNRgNRhNRiNt
Rj tRk tRl tRm t]Rn8X  d   ]! ]P"                  4      ^8  d   ]P"                  ^,          MRot]Rt9   dD   ]! 4       t]'       g   ]! Rp4       ]P*                  ! ^4       ]! Rq4       ]P,                  ! ^4       ]Ru9   d*   ]! 4       t]'       g   ]! Rr4       ]P*                  ! ^4       ]! Rs4       R# R# )vz
Aggiorna il foglio cantine con nomi fittizi e fa screenshot autentico.
Sheet: 1NGVWi_onRuUtkol87-7Ln1m_U8Xa1p2J0eEiCTe505w ("Ristoranti Toscana e dintorni")
Nz,1NGVWi_onRuUtkol87-7Ln1m_U8Xa1p2J0eEiCTe505wz'https://docs.google.com/spreadsheets/d/z/edit#gid=0zV/home/deploy/Business/OS AutoMatePRO/website/public/ai-images/cantine-excel-sample.jpgzTrattoria Il CastagnozOsteria dei Colli SenesizRistorante La Rocca d'ArezzozTrattoria del Borgo AnticozEnoteca LucchesezRistorante La RupezOsteria della QuerciazTrattoria Il GineprozLa Bottega dei SaporizTrattoria La Meridianaz Ristorante Il Podere dei TartufizOsteria della Valle VerdezTrattoria La FontanazLocanda del BoscozRistorante Il NocezOsteria La CanonicazTrattoria Il CasalezRistorante La PietrazTrattoria della SelvazOsteria della VignazTrattoria Il CampozRistorante La Torre PratesezOsteria della CollinazTrattoria Il FienilezRistorante La CortezTrattoria del TramontozOsteria del GranozTrattoria La VitezRistorante Il CinghialezOsteria del MarezTrattoria La BaiazRistorante Il CastellozTrattoria della VignazOsteria Il LecciozRistorante La CretazTrattoria del MulinozOsteria La MacchiazTrattoria del LagozRistorante Il Podere VecchiozTrattoria La Selva AretinazOsteria La VistazRistorante Il BorgozTrattoria La PignazOsteria della PacezTrattoria Il CarrubozRistorante La RocciazOsteria del VentozTrattoria La QuerciazRistorante Il GlicinezTrattoria delle Erbezinfo@castagno.examplezinfo@collisenesi.examplezinfo@larocca.examplezinfo@borgoantico.examplezinfo@enotecalucchese.examplezinfo@larupe.examplezinfo@quercia.examplezinfo@ginepro.examplezinfo@bottegasapori.examplezinfo@meridiana.examplezinfo@poderetartufi.examplezinfo@valleverde.examplezinfo@lafontana.examplezinfo@locandabosco.examplezinfo@ilnoce.examplezinfo@lacanonica.examplezinfo@ilcasale.examplezinfo@lapietra.examplezinfo@selva.examplezinfo@vigna.examplezinfo@ilcampo.examplezinfo@latorre.examplezinfo@collina.examplezinfo@ilfienile.examplezinfo@lacorte.examplezinfo@tramonto.examplezinfo@delgrano.examplezinfo@lavite.examplezinfo@cinghiale.examplezinfo@delmare.examplezinfo@labaia.examplezinfo@ilcastello.examplezinfo@dellavigna.examplezinfo@illeccio.examplezinfo@lacreta.examplezinfo@delmulino.examplezinfo@lamacchia.examplezinfo@dellago.examplezinfo@podere-vecchio.examplezinfo@selva-aretina.examplezinfo@lavista.examplezinfo@ilborgo.examplezinfo@lapigna.examplezinfo@delpace.examplezinfo@carrubo.examplezinfo@laroccia.examplezinfo@delvento.examplezinfo@laquercia.examplezinfo@glicine.examplezinfo@delleerbe.examplec                 2   \         P                  ! R V/4      p\         P                  ! R\        RV RR/4      p\        P                  ! RRRR RR	VR
V.	RRR7      pVP
                  ^ 8w  d   \        RV  R2VP                  4       R# \        RV  R24       R# )valuesspreadsheetIdrangevalueInputOptionUSER_ENTEREDgwssheetsspreadsheetsupdatez--paramsz--jsonT)capture_outputtextzERRORE aggiornamento :FzOK: z aggiornato)jsondumpsSHEET_ID
subprocessrun
returncodeprintstderr)
range_namer   bodyparamsresults   &&   (90_AI/scripts/update-sheet-screenshot.py
gws_updater   v   s    ::x()DZZN F
 ^^	.(H	VXt	-$F
 A%j\3V]]C	DK
()    c                      \        R 4       \         U u. uF  q .NK  	  pp \         Uu. uF  q".NK  	  pp\        RV4      p\        RV4      pT;'       d    T# u up i u upi )z"=== Aggiornamento nomi fittizi ===z$Ristoranti Toscana e dintorni!A2:A51z$Ristoranti Toscana e dintorni!D2:D51)r   FICTIONAL_NAMESFICTIONAL_EMAILSr   )nnames_valueseemails_valuesok1ok2s         r   update_sheetr'      sc    	
./!01ACL1"23"2QS"2M3
;\
JC
;]
KC;;3 23s
   AAc            	      6   \        R 4       ^ RIHp  V ! 4       ;_uu_ 4       pVP                  P	                  RR7      pVP                  RRRR/RR	7      pVP                  4       p\        R
\         24       VP                  \        RRR7       \        P                  ! ^4       RVP                  9   g    RVP                  P                  4       9   d2   \        R4       \        R4       VP                  4         RRR4       R#  VP                  RRR7       \        P                  ! ^4       TP                  \         RR^ZR7       \        R\          24       TP                  4        RRR4       R#    \        R4        Lj; i  + '       g   i     R# ; i)z!=== Screenshot con Playwright ===sync_playwrightF)headlesswidth  height4  N)viewportstorage_stateApro: networkidle0u  
wait_untiltimeoutaccounts.google.comsigninz'ERRORE: richiesta autenticazione Googleu8   Devi essere già loggato con il profilo Chrome esistentez8.grid-container, .waffle-grid-container, [class*='grid'] N  r7   z%Grid non trovato, aspetto comunque...jpegpath	full_pagetypequalityScreenshot salvato: T)r   playwright.sync_apir*   chromiumlaunchnew_contextnew_page	SHEET_URLgototimesleepurllowerclosewait_for_selector
screenshot	OUT_IMAGE)r*   pbrowsercontextpages        r   take_screenshotrV      sY   	
-.3			a**##U#3%%tXs3 & 

 ! 	yk"#		)u	E

1 !DHH,DHHNN<L0L;<LMMMO' 
	,	;""#]gl"m 	

1 	Y%fbQ$YK01C 
D 	;9:3 
	D s%   CFE5AF5FFF	c                 B   \        R4       ^ RIHp  ^ RIp\        P
                  P                  R4      pV ! 4       ;_uu_ 4       pVP                  P                  VRRRR.R	R
RR/R7      pVP                  4       p\        R\         24       VP                  \        RRR7       RVP                  9   d"   \        R4       \        P                  ! ^4       \        P                  ! ^4        VP                  RRR7       \        R4       \        P                  ! ^4       VP#                  \$        RR^ZR7       \        R\$         24       VP'                  4        RRR4       R#   \          d   p\        RT 24        Rp?LyRp?ii ; i  + '       g   i     R# ; i)uK   Usa il profilo Chrome esistente di Alex con le sessioni Google già attive.z/=== Screenshot con profilo Chrome esistente ===r)   Nz'~\AppData\Local\Google\Chrome\User Dataz5C:\Program Files\Google\Chrome\Application\chrome.exeFz--no-first-runz--no-default-browser-checkr,   r-   r.   r/   )user_data_direxecutable_pathr+   argsr0   r2   r3   r4   r5   r8   u&   Serve login manuale — aspetto 30s...z'.grid-container, [role='grid'], .waffler:   r;   zFoglio caricato!z4Attendo comunque (foglio potrebbe essere caricato): r<   r=   rB   T)r   rC   r*   globosr>   
expanduserrD   launch_persistent_contextrG   rH   rI   rL   rJ   rK   rO   	ExceptionrP   rQ   rN   )r*   r[   chrome_user_datarR   rT   rU   r#   s          r   take_screenshot_with_profilera      si   	
;<3 ww))*XY			a**66*X"$@AtXs3 7 
 !yk"#		)u	E !DHH,:;JJrN

1	N""#LV["\$% 	

1Y%fbQ$YK01A 
B   	NHLMM	N1 
	B s8   B)F.E'AF'F
2F FF

FF	__main__allzERRORE nell'aggiornamento sheetz0Sheet aggiornato. Aspetto 3s per propagazione...zERRORE screenshotz=== FATTO ===)rc   r   )rc   rP   )__doc__r   r   sysrJ   r\   r   rH   rQ   r   r    r   r'   rV   ra   __name__lenargvmodeokr   exitrK    r   r   <module>rm      s   ' & &95hZ{K	d	333 #3 !	3
 3 3 3 3 3 3 '3  3 3 3 3  !3" #3$ %3& '3( )3* +3, "-3. /30 132 334 536 738 93: ;3< =3> ?3@ A3B C3D E3F G3H I3J K3L M3N #O3P !Q3R S3T U3V W3X Y3Z [3\ ]3^ _3` a3b c3d e3j333 3 	3
 #3 3 3 3 !3 3 !3 3 3  3 3  !3" #3$ %3& '3( )3* +3, -3. /30 132 334 536 738 93: ;3< =3> ?3@ A3B C3D E3F G3H I3J K3L M3N "O3P !Q3R S3T U3V W3X Y3Z [3\ ]3^ _3` a3b c3d e3 j$&P*X zchh-!+388A;D  ^34HHQK@A

1$$)+%&HHQK	/# r   