Lucrator de nod simplu care acceseaza cu crawlere sitemap-urile pentru a mentine un index Algolia actualizat.

Foloseste selectoare CSS simple pentru a gasi continutul textului real de indexat.

Aceasta aplicatie foloseste biblioteca Algoliei.

TL; DR

  1. Utilizare
  2. Pre-solicitari
  3. Instalare
  4. Alergare
  5. Fisier de configurare
  6. Optiuni de configurare
  7. Obiect stocat
  8. Indexare
  9. Licenta

Utilizare

Acest script ar trebui sa fie rulat prin crontab pentru a accesa cu regularitate intregul site web.

Pre-solicitari

  1. Avand cel putin o adresa URL sitemap.xml valida care contine toata adresa URL pe care doriti sa o indexati.
  2. Sitemap (urile) trebuie sa contina cel putin nodul <loc>, adica urlset / url / loc.
  3. Un indice Algolia gol.
  4. O acreditare Algolia care poate crea obiecte si seta setari pe index, adica cautare, addObject, setari, rasfoiti, stergeti obiect, editati Setari, stergetiIndex

Instalare

  1. Obtineti cea mai recenta versiune
    • npm npm i algolia-webcrawler -g
    • git
      • ssh + git: git clone [email protected]: DeuxHuitHuit / algolia-webcrawler.git
      • https: git clone https://github.com/DeuxHuitHuit/algolia-webcrawler.git
    • https descarca cel mai recent tarball
  2. creati un fisier config.json

Alergare

npm

algolia-webcrawler –config config.json

alte

cd la radacina proiectului si rulati aplicatia nod.

Fisier de configurare

Configurarea se face prin fisierul config.json.

Puteti alege un fisier config.json stocat in alta parte si semnati pavilionul –config.

aplicatia nodului –config my-config.json

Optiuni de configurare

La minim, puteti edita config.json pentru a seta valori la urmatoarele optiuni: „app”, „cred”, „indexname” si cel putin un obiect „sitemap”. Daca aveti mai multe sitemap-uri, va rugam sa le enumerati pe toate: sub-sitemap-urile nu vor fi accesate cu crawlere.

Sunt necesare majoritatea optiunilor. Nu sunt furnizate implicite, cu exceptia cazului in care se prevede altfel.

aplicatie: Sir

Numele aplicatiei dvs.

cred: Obiect

Obiect de acreditare Algolia. A se vedea „cred.appid” si „cred.apikey”.

cred.appid: String

ID-ul aplicatiei Algolia.

cred.apikey: String

Cheia dvs. API Algolia generata.

delayBetweenRequests: Intreg

Intarziere simpla intre fiecare solicitare adresata site-ului web in milisecunde.

oldentries: Intreg

Numarul maxim de milisecunde pe care o intrare il poate trai fara a fi actualizat. Dupa fiecare rulare, aplicatia va cauta intrari vechi si le va sterge. Daca nu doriti sa scapati de intrarile vechi, setati aceasta valoare la 0.

oldentriesfilters: String

Un sir de filtrare care va fi aplicat la stergerea intrarilor vechi. Util cand doriti sa pastrati inregistrari vechi care nu vor fi actualizate. Numai inregistrarile vechi si care se potrivesc cu filtrul vor fi sterse.

maxRecordSize: intreg

Dimensiunea maxima in octeti a unei inregistrari care trebuie trimisa catre Algolia. Valoarea implicita este 10.000, dar poate varia in functie de planuri diferite.

atributeToPop: Matrice

Cand inregistrarea este prea mare (pe baza maxRecordSize), crawlerul va elimina valorile din cheia text. Utilizati acest atribut pentru a configura ce chei trebuie taiate atunci cand inregistrarea este prea mare.

index: Obiect

Un obiect care contine diferite valori legate de indexul dvs.

index.name: Sir

Numele dvs. de index.

index.

sexo en la playa nudista porno sub
viejas mexicanas follando hentai audio español
porno casero españa vidiosxxx
le pilla masturbandose xxx españa
parejas pilladas follando porno parejas
porno traducido español xxxabuelas
sol sanchez actriz porno chicas haciendo el amor
maria patiño desnuda orgias xxx
porno español jovencitas tetonas en la playa
corrida boca porno español jovencita
zofilia xxx moras follando
tetas amaters maduras españolas camara oculta
naomi woods sexo romantico
mamas incestuosas coños gordos
torrent porno cine xxx
porno gratis abuelos videos porno gratis caseros
masaje final feliz jovencitas masturbandose
folladoras triple anal
gordas corriendose maduras buenorras

setari: Obiect

Un obiect care va actiona ca argument al metodei Index # setSetting a Algoliei.

Va rugam sa cititi documentatia Algoliei cu privire la acest subiect. Poate fi utilizat orice atribut valid documentat pentru aceasta metoda.

index.settings.attributesToIndex: Array

O matrice de siruri care defineste atributele indexabile, ceea ce inseamna ca cautarea textului complet va fi efectuata impotriva acestora. Pentru o lista completa a posibilelor atribute, consultati sectiunea Obiect stocat.

index.settings.attributesForFaceting: Array

O matrice de siruri care defineste atributele care pot fi filtrate, ceea ce inseamna ca le puteti utiliza pentru a exclude returnarea unor inregistrari. Pentru o lista completa a atributelor posibile, consultati sectiunea Obiect stocat.

sitemap-uri: matrice

Aceasta matrice ar trebui sa contina o lista de obiecte sitemap.

Un sitemap este un obiect foarte simplu, cu doua proprietati sir: url si lang. Proprietatea „url” este adresa URL exacta pentru acest sitemap. Proprietatea „lang” ar trebui sa explice limba principala utilizata de adresa URL gasita in sitemap.

http: Obiect

Un obiect care contine diferite optiuni http.

http.auth: Sir

Sirul de autentificare, in numele de utilizator al nodului: formularul de parola. Daca nu aveti nevoie de autentificare, trebuie totusi sa specificati un sir gol.

selectoare: Obiect

Un obiect care contine selectoare CSS pentru a gasi continutul in paginile html.

selectors.title: String | Selector

Selector CSS pentru titlul paginii.

selectori.descriere: Sir | Selector

Selector CSS pentru descrierea paginii.

selectors.image: String | Selector

Selector CSS pentru imaginea paginii.

selectors.text: String | Selector

Selector CSS pentru titlul paginii.

selectoare [tasta]: Sir | Selector

Selector CSS pentru proprietatea „cheie”. Puteti adauga chei personalizate dupa cum doriti.

Obiect selector

Selectorii pot fi de asemenea definiti folosind forma lunga (adica ca obiect), care permite specificarea proprietatilor personalizate pe acesta.

selectori [tasta] .attributes: Sir | Matrice

Numele atributelor de cautat valori. Implicit este [„continut”, „valoare”].

selectoare [tasta] .selector: String

Selectorul CSS actual de utilizat.

selectoare [tasta] .limit: Numar

Numarul maxim de noduri de verificat.

excluderi: Obiect

Un obiect care contine selectoare CSS pentru a gasi elemente care nu trebuie indexate. Aceste selectoare CSS sunt potrivite pentru fiecare nod si sunt verificate de toti parintii lor pentru a se asigura ca nu sunt parinti ai acestuia.

exclusions.text: String

Selector CSS al elementelor excluse pentru textul paginii.

excluderi [cheie]: Sir

Selector CSS al elementelor excluse pentru proprietatea „cheie”. Cheia trebuie sa se potriveasca cu cea utilizata in selectoare [cheie].

formatatori: Obiect

Un obiect care contine sir de formatare. Valorile lor sunt eliminate din rezultatul original obtinut cu selectorul CSS asociat.

formatters.title: String, Array

Sirul de eliminat din titlul paginii. Poate fi, de asemenea, o serie de siruri.

formatatori [cheie]: Sir, Matrice

Sirul de eliminat din cheia specificata. Poate fi, de asemenea, o serie de siruri.

tipuri [cheie]: Sir

Functia de analiza utilizata pentru formatarea valorii. Tipurile acceptate sunt „intreg”, „float”, „boolean” si „json”.

implicit [cheie]: Sir

Valoarea implicita inserata pentru cheia specificata. Va fi setat daca valoarea este falsa.

pluginuri: matrice

O lista de fisiere javascript pentru a incarca cod personalizat inainte de a salva inregistrarea. Singura cerinta este sa implementati urmatoarea interfata, unde inregistrarea este obiectul care trebuie salvat, iar datele sunt html.

module.exports = (record, data) => {record.value_from_plugin = ‘Da!’; };

lista neagra: matrice

Toate adresele URL sunt comparate cu toate articolele din lista neagra. Daca adresa URL completa sau componenta caii sale se afla pe lista neagra, aceasta nu va fi indexata.

Obiect stocat

Obiectul stocat pe serverul Algoliei este dupa cum urmeaza

{data: new Date (), url: ‘http: // …’, ID obiect: shasum.digest (‘base64’), lang: sitemap.lang, http: {}, title: ”, descriere: ‘ ‘, imagine:’ ‘, text: [‘ … ‘]}

Un lucru de observat este ca textul este o matrice, deoarece am incercat sa pastram nodul textului original -> relatia de valoare reala. Algolia se descurca foarte bine.

pingbackUrl

O adresa URL poate fi setata pentru a posta un ping inapoi pe un server web dupa fiecare adresa URL salvata in Algolia. Serverul web va primi o postare cu aceste informatii:

rezultat = [succes | eroare] actiune = [actualizare | stergere] url = adresa URL introdusa ultima modificare = [valoarea antetului http] sursa = algolia-crawler

Indexare

Indexarea se face automat, la fiecare rulare. Pentru a modifica modul in care functioneaza indexarea, consultati optiunea de configurare index.settings.

LICENTA

MIT

Made with love in Montreal de Deux Huit Huit

Copyrights (c) 2014-2019