Strumenti per acquisire e convertire il Web

Crea un controllo link personalizzato

Questo esempio è disponibile anche come modello.

GrabzIt's Web Scraper è molto flessibile, consentendogli di eseguire una varietà di attività online, come la verifica di collegamenti a siti Web e la segnalazione di interruzioni.

La prima cosa da fare è creare un raschiare e assegnare il sito Web di destinazione che si desidera controllare, quindi utilizzare il codice seguente per le istruzioni di raschiatura.

        var urls = Page.getTagAttributes('href', {"tag":{"equals":"a"}});
        urls = Utility.Array.unique(urls);
        urls = Utility.Array.filter(urls, Data.readColumn("Links", "URL"));

        for (i = 0; i < urls.length; i++) 
        {
          var url = urls[i];

          Data.save(Page.getUrl(), "Links", "Found On");
          Data.save(url, "Links", "URL");

          if (Utility.URL.exists(url))
          {
            Data.save("Found", "Links", "Result");
          }
          else
          {
            Data.save("Missing", "Links", "Result");
          }
        }
    

La prima linea var urls = Page.getTagAttributes('href', {"tag":{"equals":"a"}}); estrae tutti gli URL dei collegamenti ipertestuali e li inserisce in urls variabile. La riga successiva utilizza il Utility.Array.unique metodo per rendere unici tutti gli URL.

La terza riga assicura che i collegamenti non vengano controllati due volte per fare ciò, leggiamo gli URL che sono stati precedentemente saved e filtrare i collegamenti estratti da questo. Se si desidera che ogni pagina venga interrotta per un collegamento da registrare, eliminare questa riga.

Dopo che i dati dell'URL sono stati puliti, passiamo in rassegna ogni URL rimanente, salvandolo nel file dataset insieme alla pagina corrente, prima di verificare se l'URL esiste utilizzando il Utility.URL.exists metodo. Il risultato di questo controllo è quindi anche saved nel set di dati.

In alternativa è possibile verificare l'esistenza di immagini di siti Web sostituendo il codice Page.getTagAttributes('href', {"tag":{"equals":"a"}}); con i Page.getTagAttributes('src', {"tag":{"equals":"img"}});.