+
    ziz
              
          R t ^ RIt^ RItRtRtR tR tR t]	R8X  d   ]! 4       t
]! R]! ]
4       R	24       ]
 F~  t]! R
]R,           R]R,           R]R,          ;'       g    R R24       ]! R]R,           24       ]! R]R,          '       d   ]R,          R,          R,           MR 24       ]! 4        K  	  ]! ]P                  ! ]
^RR7      4       R# R# )u   
Daytona Automobil — Scraper standalone
Endpoint Supabase Edge Function (POST) — pas besoin de Playwright.
Stock très petit (~3-24 véhicules hypercars/classics).
NzBhttps://qglgijldaxyiggfsylit.supabase.co/functions/v1/get-vehiclesz&https://daytona-automobil.se/inventoryc                 h   \         P                  P                  \        RRR/RR7      p \         P                  P	                  V ^R7      ;_uu_ 4       p\
        P                  ! VP                  4       P                  R4      4      pRRR4       XP                  R	. 4      #   + '       g   i     L"; i)
z7Appelle l'endpoint Supabase et retourne la liste brute.s   {}zContent-Typezapplication/jsonPOST)dataheadersmethod)timeoutzutf-8Nvehicles)
urllibrequestRequestENDPOINTurlopenjsonloadsreaddecodeget)reqrespr   s      6/Users/nicolassansonetti/CarsSearch/daytona_scraper.pyfetch_vehiclesr      s    
..
 
 !34	 ! C 
		R		0	0Dzz$))+,,W56 
188J## 
1	0s   4B!!B1	c                   V P                  RR4      pV P                  RR4      pV P                  RR4      pV P                  R4      pV P                  RR4      pV P                  RR4      pV RV 2P                  4       pV'       d2   VP                  4       RVP                  4       39  d   VR	V 2,          pV'       d   \         R
V 2MRpRp	V P                  R. 4      p
V
'       dz   \	        V
^ ,          \
        4      '       d]   V
^ ,          P                  R/ 4      pVP                  R4      ;'       g+    VP                  R4      ;'       g    VP                  R4      p	RVRVRVRRRRRRRRRVRVRV	RRRRR VR!VRV/# )"u?   Convertit un véhicule brut en format standardisé AutoPremium.id brandmodel
model_yearheadlineidentification u    — /NimagesformatslargemainthumbtitremarquemodeleprixdeviseSEKprix_eurkmanneeurlimagesourcezdaytona-automobilpaysSEdescriptionuuid)r   stripupperBASE_URL
isinstancedict)vehiclevidr   r   yearr   r   r&   r/   r0   r!   fmtss   &           r   	normalizer?      s   
++dB
CKK$EKK$E;;|$D{{:r*H[[!126N gQug$$&EHNN$R,??5
## "%XJau
$C E[[2&F*VAY--ay}}Y+!JJTXXf%5JJ'9J 	%%%Dds%x.     c                 V    \        4       p V  Uu. uF  p\        V4      NK  	  up# u upi )u(   Scrape et retourne la liste normalisée.)r   r?   )rawvs     r   scraperD   G   s&    

C"%&#QIaL#&&&s   &__main__u   
  Daytona Automobil — u    véhicule(s)
z  r'   r   r(   z (r.   ?)z
    URL : r/   z    Image : r0   :N<   Nz...zN/AF)indentensure_ascii)__doc__r   urllib.requestr	   r   r8   r   r?   rD   __name__r   printlenrC   dumps r@   r   <module>rR      s     O3
$(V' zxH	&s8}o_
EF1X;-q8R'
0A0Ac/B!DE
1U8*%&'

QwZ_u4NOP	 
 
$**Xae
<= r@   