Panoramica
Olostep fornisce un’API di web scraping che consente il monitoraggio in tempo reale dei prezzi di milioni di prodotti su un e-commerce a intervalli regolari (ad esempio, ogni poche ore) in modo scalabile ed economico. Questo è utile per le aziende che vogliono monitorare le fluttuazioni dei prezzi, confrontare i prezzi su più siti web o tracciare le strategie di prezzo dei concorrenti. In questa guida, vedremo come un cliente utilizza Olostep per impostare il tracciamento automatico dei prezzi per milioni di prodotti Amazon ogni giorno.Perché Usare Olostep per il Tracciamento dei Prezzi?
- Scalabilità: Monitora i prezzi di milioni di prodotti ogni poche ore.
- Automazione: Imposta compiti di scraping programmati che si eseguono a tempi predefiniti/intervalli regolari.
- Formati Multipli: Recupera i dati in formato JSON, html o markdown.
- Parser Personalizzati: Estrai solo le informazioni JSON rilevanti con i nostri parser o passa il tuo all’API.
Come Tracciare i Prezzi Usando Olostep
Panoramica del Processo di Configurazione
Quando si tracciano prodotti su larga scala, consigliamo di utilizzare l’endpoint Batches di Olostep. Questo endpoint ti permette di inviare più batch di URL (ciascuno fino a 10k) da elaborare in parallelo e poi recuperare i risultati dopo 5-8 minuti. Puoi inviare più batch contemporaneamente, monitorare il loro progresso e recuperare i risultati una volta completati. In questo modo puoi elaborare milioni di URL in 15-20 minuti. Il flusso complessivo per il tracciamento dei prezzi usando Olostep è il seguente:- Leggi i prodotti dal database e salva gli URL che vuoi tracciare in un file CSV.
- Leggi i dati dal file CSV e avvia un batch usando l’endpoint batch di Olostep. Questo viene fatto inviando i dati all’endpoint in blocchi di massimo 10.000 URL alla volta.
- Controlla lo stato del batch ogni 60 secondi per monitorare il progresso.
- Una volta che il batch è completo, leggi il contenuto e usalo nel tuo flusso di lavoro.
Passo 1: Esporta i Dati dei Prodotti dal tuo Database
Il primo passo è recuperare le informazioni sui prodotti dal tuo database e salvarle in formato CSV. Questo file dovrebbe contenere identificatori di prodotto, URL e qualsiasi metadato aggiuntivo richiesto per il tracciamento.Passo 2: Avvia un Batch con Olostep
Per avviare un batch, leggi i dati dei prodotti dal CSV e inviali all’endpoint batch di Olostep. Questo viene fatto usando una richiesta HTTP POST con un payload JSON. Ogni batch può contenere fino a 10k URL. Per dataset di grandi dimensioni (>10.000 URL), dividili in più batch e inviali in parallelo. Un batch consiste in un array di elementi, dove ogni elemento rappresenta un URL di prodotto da elaborare. Ecco la struttura di una richiesta batchStruttura dell’Array del Batch
Ogni elemento nel batch_array dovrebbe seguire questa struttura:Array di elementi da elaborare. Massimo di 10.000 URL per batch. Ogni elemento deve avere un
custom_id unico.Codice paese a due lettere (ad esempio, “IT” per l’Italia).
Nome del parser personalizzato da usare (ad esempio, “@olostep/amazon-it-product”). Contattaci a info@olostep.com per ottenere accesso ai parser pre-costruiti o per crearne uno tuo.
Passo 3: Monitora lo Stato del Batch
Una volta avviato un batch, dovrai monitorare il suo stato per determinare quando l’elaborazione è completa. L’API fornisce un endpoint di stato che può essere interrogato periodicamente (ad esempio, ogni 60 secondi) con il batch_idPasso 4: Recupera gli ID per gli Elementi Completati
Una volta che il batch è contrassegnato come completato, puoi recuperare l’elenco degli elementi completati. Ogni elemento avrà un retrieve_id. Se vuoi il contenuto effettivo, usa l’endpoint retrieve passando ilretrieve_id
retrieve_id per ogni URL inviato. Puoi quindi usare l’endpoint retrieve per recuperare e memorizzare i dati estratti (html, markdown o JSON) per ogni URL.
Puoi ottenere il retrieve_id per ogni elemento nel batch usando il seguente codice:
Passo 5: Recupera il Contenuto per ogni Elemento
Una volta che hai ilretrieve_id per ogni elemento, puoi recuperare il suo contenuto (HTML, Markdown o JSON) usando l’endpoint retrieve: