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 sta utilizzando 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 attività di scraping pianificate che vengono eseguite a orari 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 i tuoi 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 consente di inviare più batch di URL (ciascuno fino a 10k) da elaborare in parallelo e quindi 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 generale per il tracciamento dei prezzi utilizzando 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 utilizzando 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 utilizzalo 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 del prodotto dal CSV e inviali all’endpoint batch di Olostep. Questo viene fatto utilizzando una richiesta HTTP POST con un payload JSON. Ogni batch può avere fino a 10k URL. Per set di dati 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 univoco.Codice paese a due lettere (ad es., “IT” per l’Italia).
Nome del parser personalizzato da usare (ad es., “@olostep/amazon-it-product”). Contattaci a info@olostep.com per ottenere l’accesso ai parser predefiniti 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 è stato 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 utilizzare 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 utilizzando il seguente codice:
Passo 5: Recupera il Contenuto per ciascun Elemento
Una volta che hai ilretrieve_id per ciascun elemento, puoi recuperare il suo contenuto (HTML, Markdown o JSON) utilizzando l’endpoint retrieve: