SviluppoPagamento protettoDettagli
- Le revisioni previste dal pacchetto sono gratuite.
- Se non risponde entro 3 giorni dalla consegna, il lavoro viene accettato automaticamente.
Il denaro viene riservato al momento del pagamento e sbloccato solo quando accetta il lavoro.

Esempio di risultato
Parser del catalogo di un fornitore di attrezzi da giardino in Excel
Come appare il risultato
| Articolo | Nome | Prezzo | Disponibile | Peso | Foto |
|---|---|---|---|---|---|
| GT-1042 | Forbici da potatura, 20 mm | 18,90 | Sì | 0,24 kg | …/gt-1042.jpg |
| GT-1187 | Seghetto pieghevole, 210 mm | 24,50 | Sì | 0,31 kg | …/gt-1187.jpg |
| GT-2210 | Cesoie per siepi, lama ondulata | 39,00 | No | 1,10 kg | …/gt-2210.jpg |
| GT-3305 | Trapiantatoio, acciaio inox | 9,80 | Sì | 0,18 kg | …/gt-3305.jpg |
| GT-4120 | Tubo da giardino 25 m, 1/2" | 42,00 | Sì | 2,90 kg | …/gt-4120.jpg |
Il file dell'esempio contiene 1.236 prodotti da 52 pagine di elenco.
Una parte del codice
def product_links(list_url: str) -> Iterator[str]:
"""Link alle pagine prodotto da ogni pagina dell'elenco, seguendo 'Avanti'."""
url: str | None = list_url
while url:
page = fetch(url)
for card in page.select("div.product-card a.title"):
yield urljoin(url, card["href"])
next_link = page.select_one("a.pagination-next")
url = urljoin(url, next_link["href"]) if next_link else None
def fetch(url: str) -> BeautifulSoup:
"""Una pagina pubblica, a un ritmo discreto: una pausa tra le richieste e qualche tentativo in caso di errore."""
for attempt in range(3):
time.sleep(settings.delay_seconds)
response = session.get(url, timeout=30)
if response.status_code == 200:
return BeautifulSoup(response.text, "html.parser")
log.warning("%s ha risposto %s, tentativo %d di 3", url, response.status_code, attempt + 1)
raise ScraperError(f"{url} non si è aperta dopo 3 tentativi")
File: un archivio ZIP con scraper.py, settings.ini (la pagina iniziale, la pausa tra le richieste, il nome del file), requirements.txt e un README su come installarlo ed eseguirlo. Legge solo pagine pubbliche, una ogni 2 secondi, e controlla prima il file robots.txt del sito. Il cliente lo esegue sul proprio computer.
Cliente: un negozio online di giardinaggio che rivende gli attrezzi di un fornitore; il fornitore ha un catalogo pubblico sul suo sito ma nessun file di listino. Compito: scorrere le pagine di elenco del catalogo, aprire ogni pagina prodotto e salvare in Excel codice articolo, nome, prezzo, disponibilità, peso e link alla foto principale, per confrontare i prezzi una volta alla settimana.
Il cliente e tutti i dati sono inventati.
Informazioni sul servizio
Quando un fornitore mostra il suo assortimento su un sito pubblico ma non invia alcun file, questo parser copia il catalogo in una tabella che il suo negozio può importare: nome, codice, prezzo, descrizione, caratteristiche, categoria e link alle foto, e salva le foto in una cartella. Ci invii il sito del fornitore, i link a una categoria e a una pagina prodotto, una o due pagine salvate dal browser e il modello di importazione del suo negozio, per esempio un CSV di Shopify o WooCommerce, così le colonne lo seguono. Riceve il codice Python con un file di impostazioni e un README e lo esegue sul suo computer. Usi solo foto e testi che il fornitore le permette di usare. Legge pagine pubbliche a un ritmo discreto e non accede mai con login, non aggira captcha o protezioni e non raccoglie dati personali. È lei a valutare se le condizioni del sito lo consentono; un successivo cambio di struttura richiede un aggiornamento.
Cosa è incluso
- Cosa riceveUn archivio ZIP con il codice Python, un file di impostazioni e un README con le istruzioni passo passo; il codice è visibile anche nella pagina dell'ordine.
- Colonne per la sua importazioneNell'ordine e con i nomi del file di importazione del suo negozio
- Foto pronte da caricareLink alle foto in una colonna e file con il nome del codice prodotto
- Prezzi come mostratiIl prezzo del fornitore; il suo ricarico lo aggiunge nella tabella
- Ritmo discretoUna pausa tra le pagine, regolata nelle impostazioni
- Una guida sempliceCosa installare e come avviarlo, passo passo
Come funziona
- 1CatalogoLei indica le pagine del fornitore e il suo modello di importazione
- 2ParserScriviamo il codice e la guida per eseguirlo
- 3Importazione di provaLo esegue e importa le prime righe nel suo negozio
- 4ModificheChiede modifiche nei limiti del pacchetto e invia eventuali messaggi di errore
Cosa ci serve da lei
Il sito del fornitore: un link a una categoria e a una pagina prodotto, e circa quanti prodotti ci sono. Il modello di importazione del suo negozio o un'esportazione di esempio di alcuni suoi prodotti, così le colonne corrispondono. I campi che le servono, come nome, codice, prezzo, descrizione, caratteristiche, categoria, foto. Una o due pagine del fornitore salvate dal browser (File > Salva pagina con nome). Come chiamare i file delle foto. E la sua conferma che il fornitore le permette di usare foto e testi.
Le chiederemo:
- Quale sito del fornitore e quali pagine?
- Il suo negozio e il suo file di importazione
- Circa quanti prodotti?
- Foto
Confronto dei pacchetti
| Pacchetti | BaseDa pagine prodotto a tabella20 € | StandardUn'intera sezione del catalogo39 € | PremiumPiù fornitori o sezioni68 € |
|---|---|---|---|
| Tempi di consegna | 1 giorno | 2 giorni | 3 giorni |
| Revisioni | 1 | 2 | 3 |
| Siti | 1 | 1 | fino a 3 |
| Tipi di pagina | 1 | 2 (categoria e prodotto) | fino a 3 |
| Campi | fino a 10 | fino a 25 | fino a 25 su ciascuno |
| Scorre le pagine di un elenco | No | Sì | Sì |
| File dei risultati | CSV | Excel o CSV | Excel, CSV o JSON |
| Duplicati rimossi, riprende da dove si è fermato | No | No | Sì |
| Foto | link in una colonna, file in una cartella | link in una colonna, file in una cartella | link in una colonna, file in una cartella |
| Ordina Base | Ordina Standard | Ordina Premium |
Pagamento protetto
Paga al momento dell'ordine, ma il denaro viene sbloccato solo per un lavoro accettato.
- Prezzo fissoIl prezzo del pacchetto non cambia dopo il pagamento.
- Il denaro viene riservatoAl pagamento, l'importo viene solo riservato. Passa a Dleex quando accetta il lavoro.
- Verificato prima della consegnaOgni risultato passa un controllo di qualità prima di arrivare a lei, e lo vede nella pagina dell'ordine prima di accettarlo.
- Revisioni gratuiteRichieda revisioni nell'ambito del suo brief tante volte quante ne prevede il pacchetto.
- Accettazione dopo 3 giorniSe entro 3 giorni dalla consegna non accetta il lavoro né richiede una revisione, il lavoro viene accettato automaticamente. Se scrive nella chat dell'ordine dopo la consegna, l'ordine resta in attesa; dopo la nostra risposta potremmo far ripartire i 3 giorni e glielo indicheremo nella chat.
- Rifacimento o rimborso totaleSe il risultato non corrisponde al suo brief e le revisioni non hanno risolto il problema, oppure il lavoro richiede più del doppio dei tempi di consegna previsti, scriva nella chat dell'ordine: rifaremo il lavoro o le rimborseremo l'intero pagamento.
Domande e risposte
Il file si importerà subito nel mio negozio?
Le colonne seguono il modello che invia, quindi nella maggior parte dei casi sì. Verifichiamo il file rispetto al suo modello, non dentro il suo negozio, quindi provi una piccola importazione delle prime righe prima di caricare tutto.
Posso usare foto e descrizioni del fornitore?
Solo se il fornitore lo consente: appartengono al loro proprietario, e ottenere il permesso spetta a lei. Il parser salva solo immagini che può usare.
Può leggere i prezzi rivenditore dietro l'accesso del fornitore?
No. Non accede mai con login, quindi i prezzi per rivenditori o all'ingrosso dietro un account restano fuori portata. Chieda al fornitore un file prezzi; il parser raccoglie comunque il resto del catalogo pubblico.
Può copiare un catalogo da Amazon, Google o un negozio su un social network?
No. Le loro condizioni lo vietano; lo stesso vale per LinkedIn e gli altri social network. Usi l'esportazione ufficiale del servizio o chieda un file al venditore.
E se il fornitore cambia il sito?
Il parser segue le pagine come sono oggi. Un successivo cambio di struttura richiede un aggiornamento, che è un nuovo ordine.
Non hai trovato la risposta?


