JSFiddle - React, Tailwind, and code Playground

by moku23

JavaScript

// Funzione per ritardare l'esecuzione
function delay(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}

// Funzione per inviare una richiesta
function sendRequest() {
  return fetch('https://www.annunci69.it/listato.php?categoria=&regione=&Invia.x=1000&Invia.y=1300000');
}

// Funzione principale per inviare richieste in batch
async function sendRequests() {
  let totalRequests = 0;

  while (totalRequests < 500) {
    const requests = [];

    // Crea 6 richieste
    for (let i = 0; i < 6; i++) {
      requests.push(sendRequest());
      totalRequests++;
    }

    // Invia tutte le 6 richieste in parallelo
    await Promise.all(requests);

    // Calcola un ritardo casuale tra 10 e 50 secondi
    const randomDelay = Math.floor(Math.random() * (50 - 10 + 1) + 10) * 1000;

    // Aspetta per il ritardo casuale prima di inviare il prossimo set di richieste
    await delay(randomDelay);
  }
}

// Esegui la funzione principale
sendRequests().catch(error => {
  console.error('Si è verificato un errore:', error);
});