Novità

BaseDat.dat

  • Creatore Discussione Creatore Discussione joe
  • Data di inizio Data di inizio
AGGIORNAMENTO ARCHIVIO LOTTO da LottoPython V.4.3

Codice:
Option Explicit
Sub Main
     'Agg_Lotto V.4.3 By Joe *** Archivio LottoPython ***  - 08/02/2026 -
     'Script per Spaziometria By Joe.
     Dim sFileLoc
     Dim nEstrTot,sDataLastEstr,k,r
     Dim sDataEstr,nNumEstr,nSalvate
     Dim b
     Dim sFileBd
     Dim sLink
     Dim Ia,N,sVV,x
     Dim CfrData
     Dim Vecchio,Nuovo
     Dim V
     Dim E
     sLink = "https://raw.githubusercontent.com/Lottopython/exstrazionales/refs/heads/main/Estrazionales%20lotto.txt"
     b = False : N = False
     nSalvate = 0
     sFileBd = GetDirectoryAppData & "BaseDati.dat"
     Scrivi sFileBd,1,,,2 : Scrivi
     sFileLoc = GetDirectoryAppData & "ArcTlv\"
     Messaggio "Agg_Lotto V.4.3 By Joe *** Archivio LottoPython ***"
     If CreaDirectory(sFileLoc) Then
          sFileLoc = sFileLoc & "Archivio.txt"
          If DownloadFromWeb(sLink,sFileLoc) Then
               nEstrTot = EstrazioniArchivio
               sDataLastEstr = DataEstrazione(nEstrTot,,,"/")
               Vecchio = Right(sDataLastEstr,4)
               Ia = IndiceAnnuale(nEstrTot)
               If nEstrTot = 0 Then CfrData = "01/01/1871" : b = True : Ia = 0
               ReDim aRighe(0)
               Call LeggiRigheFileDiTesto(sFileLoc,aRighe)
               For k = 0 To UBound(aRighe) Step 12
                    AvanzamentoElab 1,UBound(aRighe),k
                    ReDim aV(0)
                    If Len(aRighe(k)) = 53 Then
                         sDataEstr = Left(aRighe(k),2) & "/" & Mid(aRighe(k),4,2) & "/" & Mid(aRighe(k),7,4)
                         ReDim aEstr(11,5)
                         For r = 0 To 10
                              sVV = Right(aRighe(k + r),27)
                              V = Split(sVV,"   ") '4 Spazi
                              For x = 0 To 4
                                   aEstr(r + 1,x + 1) = V(x)
                              Next
                         Next
                         Nuovo = Right(sDataEstr,4)
                         If b Then
                              If Nuovo <> Vecchio Then Ia = 0 : Vecchio = Nuovo
                              If sDataEstr <> sDataLastEstr Then
                                   Ia = Ia + 1
                                   nNumEstr = Ia
                                   If nNumEstr > 0 And IsDate(sDataEstr) Then
                                        If CfrData <> sDataEstr Then
                                             If SalvaEstrazione(aEstr,sDataEstr,nNumEstr,sFileBd) Then
                                                  CfrData = sDataEstr
                                                  nSalvate = nSalvate + 1
                                             End If
                                        Else
                                             ColoreTesto 2
                                             Scrivi "ATTENZIONE " & sDataEstr & " ERRORE NELLE DATE",True
                                             ColoreTesto 0
                                        End If
                                   End If
                              End If
                         End If
                         If sDataEstr = sDataLastEstr Then b = True
                    Else
                         Scrivi "Errore nel Download"
                    End If
               Next
               If nSalvate > 0 Then AllineaArchivi
          Else
               Scrivi "Errore nella creazione Dei File Necessari"
          End If
          Call Scrivi("Aggiornamento Lotto V.4.3 By Joe *** Utilizza Archivio lottoPython ***",1)
          Call Scrivi("")
          Call Scrivi("Estrazioni trovate in Archivio Remoto " & QuantitaEstrazioniInFile(sFileBd))
          Call Scrivi("")
          Call Scrivi("Archivio Locale Aggiornato all' Estrazione N° " & IndiceAnnuale(EstrazioniArchivio) & " del " & DataEstrazione(EstrazioneFin,,,"/"))
          Call Scrivi("")
          Call Scrivi("- Sono state Aggiunte " & nSalvate & " Estrazioni -",1,,,1)
          Call Scrivi("")
     End If
End Sub

Questo script è in grado di importare TUTTE le attuali 10800 Estrazioni !

GRAZIE all' ARCHIVIO remoto che LottoPython ha reso disponibile per tutti.

:) Buona domenica a tutte/i.
 
Ultima modifica:
Questo script per Spaziometria, effettua il download dell'archivio completo del SUPERENALOTTO,

che LottoPython ha reso disponibile ed aggiorna su GitHub.

Codice:
Sub Main
   'ARCHIVIO_SUPERENALOTTO x Spaziometria
   'Script LuigiB-LottoPython-Joe V.4.3 del 12/02/2026
   Dim sPercorsoLocale,sFileLocale
   sPercorsoLocale = GetDirectoryTemp
   CreaDirectory(sPercorsoLocale)
   sFileLocale = sPercorsoLocale & "superenalotto_completo.csv"
   Call EliminaFile(sFileLocale)
   Dim sFileBaseDati : sFileBaseDati = GetDirectoryAppData & "BaseDatiSuperEna.Dat"
   Dim eDate,eClock,sPercorsosFileBaseDatiBackup,sFileBaseDatiBackup
   Call DateTimeTest(eDate) : Call ClockTimeTest(eClock)
   sPercorsosFileBaseDatiBackup = GetDirectoryAppData & "Archivio SuperEnalotto\Backup\dat\"
   CreaDirectory(sPercorsosFileBaseDatiBackup)
   sFileBaseDatiBackup = sPercorsosFileBaseDatiBackup & "BaseDatiSuperEna.Dat.backup_Del_" & eDate & "_ore_" & eClock & ".bak"
   If FileEsistente(sFileBaseDati) Then
      Call CopiaFile(sFileBaseDati,sFileBaseDatiBackup)
   End If
   Dim sUrlCompleto,sScelta
 
         sUrlCompleto = "https://raw.githubusercontent.com/Lottopython/SUPERENALOTTO-SPAZIOMETRIA/refs/heads/main/superenalotto.txt"
         Call Messaggio("Scelto download da GitHub (predefinito).")
 
   Dim StrMessInfo
   StrMessInfo = MsgBox("Ricreare l'intero archivio dal 1997?" & vbCrLf & _
                        "Verranno eliminate tutte le estrazioni esistenti.",vbQuestion + vbYesNo,"Conferma Ricreazione")
   If StrMessInfo = vbNo Then
      MsgBox "Operazione annullata dall'utente.",vbInformation
      Exit Sub
   End If
   Call EliminaFile(sFileBaseDati)
   If Not DownloadFromWeb(sUrlCompleto,sFileLocale) Then
      MsgBox "Errore nel download del file da:" & vbCrLf & sUrlCompleto,vbCritical,"Errore Download"
      Exit Sub
   End If
   If Not FileEsistente(sFileLocale) Then
      MsgBox "File temporaneo non trovato dopo il download.",vbCritical
      Exit Sub
   End If
   Dim aRighe,k,sNumEstrTrovate
   sNumEstrTrovate = 0
   If LeggiRigheFileDiTesto(sFileLocale,aRighe) Then
      For k = 0 To UBound(aRighe)
         If ScriptInterrotto Then Exit For
         Dim sRiga : sRiga = Trim(aRighe(k))
         If sRiga <> "" Then
            Dim aCampi : ReDim aCampi(0)
            Call SplitByChar(sRiga,",",aCampi)
            If UBound(aCampi) = 9 Then
               Dim sID,sData
               sID = Trim(aCampi(0))
               sData = Trim(aCampi(1))
               If Len(sData) = 10 And Mid(sData,3,1) = "/" And Mid(sData,6,1) = "/" Then
                  Dim nGiorno,nMese,nAnno
                  On Error Resume Next
                  nGiorno = Int(Split(sData,"/")(0))
                  nMese = Int(Split(sData,"/")(1))
                  nAnno = Int(Split(sData,"/")(2))
                  On Error GoTo 0
                  If nGiorno >= 1 And nGiorno <= 31 And _
                     nMese >= 1 And nMese <= 12 And _
                     nAnno >= 1997 And nAnno <= Year(Now) Then
                     Dim bValida : bValida = True
                     Dim i
                     For i = 2 To 9
                        Dim nValore
                        nValore = Int(Trim(aCampi(i)))
                        If nValore < 0 Or nValore > 90 Then
                           bValida = False
                           Exit For
                        End If
                     Next
                     If bValida Then
                        Dim aNumeri
                        ReDim aNumeri(8)
                        For i = 1 To 6
                           aNumeri(i) = Int(Trim(aCampi(i + 1)))
                        Next
                        aNumeri(7) = Int(Trim(aCampi(8)))
                        aNumeri(8) = Int(Trim(aCampi(9)))
                        Dim nID : nID = 0
                        On Error Resume Next
                        nID = CLng(sID)
                        On Error GoTo 0
                        Call SalvaEstrazioneSE(aNumeri,sData,nID,sFileBaseDati)
                        sNumEstrTrovate = sNumEstrTrovate + 1
                        If(sNumEstrTrovate Mod 500) = 0 Then
                           Call Messaggio("Estrazioni elaborate: " & sNumEstrTrovate)
                        End If
                     End If
                  End If
               End If
            End If
         End If
      Next
   End If
   Call EliminaFile(sFileLocale)
   Call MsgBox("Aggiornamento completato con successo!" & vbCrLf & _
               "Estrazioni totali importate: " & sNumEstrTrovate,vbInformation,"ARCHIVIO SUPERENALOTTO")
End Sub
Function DateTimeTest(eDate)
   Dim DD,MM,YYYY : DD = Day(Now) : MM = Month(Now) : YYYY = Year(Now)
   eDate = YYYY & Right("0" & MM,2) & Right("0" & DD,2)
End Function
Function ClockTimeTest(eClock)
   Dim HH,MM,SS : HH = Hour(Now) : MM = Minute(Now) : SS = Second(Now)
   eClock = Right("0" & HH,2) & Right("0" & MM,2) & Right("0" & SS,2)
End Function

:)

PS: NON MODIFICA il numero-progressivo-estrazione che pertanto sostituisce l'indice annuale.
 
Ultima modifica:

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 10 febbraio 2026
    Bari
    20
    78
    56
    79
    86
    Cagliari
    02
    43
    83
    59
    39
    Firenze
    87
    50
    83
    07
    25
    Genova
    44
    36
    43
    15
    53
    Milano
    14
    39
    30
    35
    29
    Napoli
    60
    34
    76
    50
    41
    Palermo
    26
    61
    04
    41
    64
    Roma
    10
    31
    42
    52
    55
    Torino
    75
    63
    47
    59
    69
    Venezia
    29
    47
    07
    27
    31
    Nazionale
    52
    57
    46
    19
    24
    Estrazione Simbolotto
    Cagliari
    22
    24
    06
    29
    11

Ultimi Messaggi

Indietro
Alto