Skrobak internetowy GrabzIt jest bardzo elastyczny, dzięki czemu może wykonywać różnorodne zadania online, takie jak sprawdzanie linków do stron internetowych i raportowanie, które są zepsute.
Pierwszą rzeczą do zrobienia jest stworzenie zeskrobać i przypisz docelową stronę internetową, którą chcesz sprawdzić, a następnie użyj poniższego kodu do instrukcji zgarniania.
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"); } }
Pierwsza linia var urls = Page.getTagAttributes('href', {"tag":{"equals":"a"}});
wyodrębnia wszystkie adresy URL hiperłączy i umieszcza je w pliku urls
zmienna. Następna linia używa Utility.Array.unique metoda, aby wszystkie adresy URL były unikalne.
Trzeci wiersz zapewnia, że linki nie są sprawdzane dwukrotnie, aby to zrobić, czytamy adresy URL, które były wcześniej saved i przefiltruj przez to wyodrębnione linki. Jeśli chcesz, aby każda strona była zapisywana, usuń ten wiersz.
Po wyczyszczeniu danych adresu URL przeglądamy każdy pozostały adres URL, zapisując go w pliku zestaw danych wraz z bieżącą stroną, przed sprawdzeniem, czy adres URL istnieje, używając Utility.URL.exists
metoda. Wynik tej kontroli jest wtedy również saved w zbiorze danych.
Alternatywnie możesz sprawdzić, czy istnieją obrazy witryn internetowych, zastępując kod Page.getTagAttributes('href', {"tag":{"equals":"a"}});
w Page.getTagAttributes('src', {"tag":{"equals":"img"}});
.