Parser dei dati SEO delle pagineSviluppo e personalizzazione

Un parser Python che salva in una tabella i dati SEO delle pagine di un sito: title, description, H1, stato, canonical

Di solito pronto in 15 minutiRevisioni incluseControllo di qualità
Pacchetti
Pagamento 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.

Un parser Python che salva in una tabella i dati SEO delle pagine di un sito: title, description, H1, stato, canonical

Esempio di risultato

Esempio per il pacchetto Standard

Parser del catalogo di un fornitore di attrezzi da giardino in Excel

Come appare il risultato

ArticoloNomePrezzoDisponibilePesoFoto
GT-1042Forbici da potatura, 20 mm18,90Sì0,24 kg…/gt-1042.jpg
GT-1187Seghetto pieghevole, 210 mm24,50Sì0,31 kg…/gt-1187.jpg
GT-2210Cesoie per siepi, lama ondulata39,00No1,10 kg…/gt-2210.jpg
GT-3305Trapiantatoio, acciaio inox9,80Sì0,18 kg…/gt-3305.jpg
GT-4120Tubo da giardino 25 m, 1/2"42,00Sì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

Prima di un trasferimento del sito o di un controllo SEO, questo parser scorre le pagine di un sito e salva una riga per ciascuna: indirizzo, codice di risposta, title e meta description con la loro lunghezza, H1, numero di H2, link canonical, tag noindex, numero di parole, immagini senza testo alt e numero di link interni. Prende gli indirizzi dal file sitemap del sito, dalle pagine di categoria o da un suo elenco. Lo usi sul suo sito o sul sito pubblico di un concorrente. Ci invii l'indirizzo del sito, qualche pagina salvata dal browser e i campi che le servono. Riceve il codice Python, un file di impostazioni e un README e lo esegue sul suo computer. Raccoglie dati, non corregge il sito e non promette posizioni nei motori di ricerca. Legge solo pagine pubbliche a un ritmo discreto e non accede mai con login né aggira captcha o protezioni. È lei a valutare se le condizioni di un 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.
  • Tag e loro lunghezzaTitle e description con il numero di caratteri
  • Codici di rispostaIndividua pagine rotte e reindirizzate
  • Testo alt mancanteConta le immagini senza testo alt
  • Da sitemap o dal suo elencoIndirizzi dal file sitemap, dalle categorie o da un file che fornisce
  • Ritmo discretoUna pausa tra le pagine, regolata nelle impostazioni

Come funziona

  1. 1
    SitoLei indica il sito, la fonte degli indirizzi e le pagine salvate
  2. 2
    ParserScriviamo il codice e la guida per eseguirlo
  3. 3
    AvvioLo esegue e controlla qualche riga nel browser
  4. 4
    ModificheChiede modifiche nei limiti del pacchetto e invia eventuali messaggi di errore

Cosa ci serve da lei

L'indirizzo del sito e da dove il parser deve prendere gli indirizzi: il file sitemap, le pagine di categoria o un suo elenco. Circa quante pagine ci sono. I campi che le servono, es. indirizzo, codice di risposta, title, description, H1, canonical, noindex, numero di parole, immagini senza alt. Due o tre pagine di tipo diverso salvate dal browser (File > Salva pagina con nome). CSV o Excel.

Le chiederemo:

  • Quale sito?
  • Da dove prendere gli indirizzi
  • I campi che le servono
  • Circa quante pagine?

Confronto dei pacchetti

PacchettiBasePagine dal suo elenco19 €StandardL'intero sito dai suoi elenchi37 €PremiumFino a 3 siti66 €
Tempi di consegna1 giorno2 giorni3 giorni
Revisioni123
Siti11fino a 3
Tipi di pagina12 (elenco pagine e pagina)fino a 3
Campifino a 10fino a 25fino a 25 su ciascuno
Scorre le pagine di un elencoNoSìSì
File dei risultatiCSVExcel o CSVExcel, CSV o JSON
Duplicati rimossi, riprende da dove si è fermatoNoNoSì
Ordina BaseOrdina StandardOrdina 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.
Come funziona →

Domande e risposte

È un audit SEO completo?

No. Raccoglie i dati di ogni pagina in un'unica tabella; le conclusioni e le correzioni spettano a lei o al suo sviluppatore.

Può controllare le mie posizioni su Google?

No. Non legge Google, Amazon, LinkedIn né i social network: le loro condizioni lo vietano. Le posizioni sono nel suo account della console di ricerca, a cui il parser non accede mai.

Quanto può essere grande il sito?

Migliaia di pagine vanno bene, ma a un ritmo discreto richiedono ore. Premium riprende da dove si è fermato, quindi un'esecuzione lunga si può dividere.

Può leggere una copia di prova del mio sito protetta da password?

No. Legge solo pagine pubbliche e non accede mai con login. Una copia di prova pubblica senza password funziona, e le password non vanno mai nel codice.

Non hai trovato la risposta?

Pacchetti