Anonim

Aš valdau kliento svetainę, kurioje jie pateikia didelę duomenų bazę, kurią per daugelį metų surinko tiksliai ir lėtai. Jie randa savo duomenis žiniatinklyje įvairiose vietose. Daugiau nei tikėtina, kad dėl to, kad grandiklis eina per savo svetainės puslapį pagal puslapį ir išgauna reikiamą informaciją į savo duomenų bazę. Ir jei jums įdomu, jie žino, kad tai jų duomenys, nes kiekvienoje jų svetainės kategorijoje yra vienas pasodintas duomenų gabalas.

Aš per pastaruosius porą dienų esu atlikęs daugybę tyrimų ir galiu pasakyti, kad nėra tobulas sprendimas visiems. Radau keletą dalykų, kuriuos reikia padaryti, kad jiems tai padaryti būtų šiek tiek sunkiau. Tai aš įgyvendinau klientui.

Ajaxifikuoti paginuoti duomenys

Jei turite daug paginkluotų duomenų, o jūs pagilinate savo duomenis, tiesiog pridėdami kitą numerį prie savo URL pabaigos, ty http://www.domenas.com/kategorija/programming/2 - tada darote vikšrų darbas yra daug lengvesnis. Pirma problema yra nesunkiai atpažįstamas raštas, todėl nuimti skreperį šiuose puslapiuose yra lengva kaip pyragą. Antroji problema, neatsižvelgiant į paskesnių šios kategorijos puslapių URL, labiau tikėtina, kad ten bus kita ir ankstesnė nuoroda, į kurią jie gali patekti.

Įkėlus pažymėtus duomenis per „javascript“ ir neperkraunant puslapio, tai žymiai apsunkina daugybę gremžtukų. „Google“ tik neseniai pati pradėjo analizuoti „javascript“ puslapyje. Tokių duomenų perkėlimas yra nedidelis. Jūs pateikiate keletą mažiau „Google“ puslapių, kuriuos reikia indeksuoti, tačiau techniškai visi pažymėti duomenys vis tiek turėtų būti nukreipti į šaknies kategorijos puslapį, naudojant kanonizaciją. Ajaxifikuokite savo puslapių duomenų puslapius.

Atsitiktinė šablono išvestis

Grandikliai dažnai bus šiek tiek pritaikyti būtent jūsų duomenims. Jie pritvirtins tam tikrą pavadinimo div id ar klasę, 3-ą langelį kiekvienoje jūsų aprašymo eilutėje ir tt. Dauguma grandiklių turi lengvai atpažįstamą modelį, kad dirbtų su dauguma duomenų, gaunamų iš tos pačios lentelės, rodomas pagal tą patį šabloną. Atsitiktinai padalinkite savo klasių ir klasių pavadinimus, atsitiktinai įterpkite tuščius lentelės stulpelius su 0 pločiu. Parodykite savo duomenis vieno puslapio lentelėje, pažymėtomis dalimis, o kito šablono deriniu. Pateikdami savo duomenis nuspėjamai, juos galite nuskaityti nuspėjamai ir tiksliai.

Medaus puodas

Tai gana tvarkinga dėl savo paprastumo. Keliuose puslapiuose aš susidūriau su šiuo metodu, kaip išvengti svetainių grandymo.

  • Sukurkite naują failą savo serveryje pavadinimu gotcha.html.
  • Į savo robots.txt failą pridėkite:
    Vartotojo atstovas: *
    Neleisti: /gotcha.html

    Tai nurodo visiems robotams ir vorams, kurie indeksuoja jūsų svetainę, kad neindeksuotų failo gotcha.html. Bet kuris įprastas interneto tikrinimo įrenginys gerbs jūsų robots.txt failo norus ir neprisijungs prie to failo. ty „Google“ ir „Bing“. Galbūt norėsite įgyvendinti šį veiksmą ir palaukite 24 valandas prieš pereidami prie kito veiksmo. Tai užtikrins, kad tikrinimo įrenginys nebus atsitiktinai užblokuotas dėl to, kad atnaujindamas robots.txt failą jis jau buvo patikrintas.
  • Kur nors savo svetainėje įdėkite nuorodą į gotcha.html. Nesvarbu kur. Tačiau aš rekomenduočiau poraštėje įsitikinti, kad šios nuorodos nematyti CSS, rodyti: nėra;
  • Dabar prisijunkite šiame puslapyje apsilankiusių asmenų IP / bendrąją informaciją ir užblokuokite juos. Arba galite sugalvoti scenarijų, kad pateiktumėte neteisingus ir šiukšlių duomenis. O gal graži asmeninė žinutė iš jūsų jiems.

Įprasti žiniatinklio žiūrintieji negalės matyti nuorodos, todėl ji netyčia nebus spustelėta. Gerbiami tikrinimo programos (pavyzdžiui, „Google“) atsižvelgs į jūsų robots.txt norus ir nesilankys faile. Taigi vieninteliai kompiuteriai, kurie turėtų suklupti šiame puslapyje, yra tie, kurie turi kenkėjiškų ketinimų, arba kažkas peržiūri jūsų šaltinio kodą ir atsitiktinai spusteli (ir gerai, jei taip atsitiks).

Yra kelios priežastys, dėl kurių ne visada pavyks. Pirma, daugybė grandiklių neveikia kaip įprasti žiniatinklio tikrinimo įrenginiai ir ne tik atranda duomenis sekant kiekvieną nuorodą iš kiekvieno jūsų svetainės puslapio. Grandikliai dažnai statomi tam, kad būtų galima pritvirtinti tam tikruose puslapiuose ir sekti tik tam tikras struktūras. Pvz., Grandiklis gali būti pradėtas kategorijos puslapyje, o tada nurodoma aplankyti tik tuos URL, kuriuose yra žodis / duomenys šliuže. Antra, jei kas nors naudoja savo grandiklį tame pačiame tinkle kaip ir kiti, o yra naudojamas bendras IP, jūs uždrausite visą tinklą. Iš tikrųjų, jei tai bus problema, turėsite turėti labai populiarią svetainę.

Duomenis rašykite vaizdams skrendant

Raskite mažesnį duomenų lauką, nebūtinai ilgas teksto eilutes, nes tai gali šiek tiek apsunkinti stiliaus formavimą. Išvesdamas šiuos duomenis paveikslėlyje, aš visiškai įsitikinęs, kad beveik kiekvienoje programavimo kalboje yra būdų, kaip dinamiškai rašyti tekstą į atvaizdą (php, imagettftext). Tai turbūt efektyviausia naudojant skaitines reikšmes, nes skaičiai suteikia žymiai nereikšmingesnį SEO pranašumą.

Alternatyva

Tai nebuvo šio projekto pasirinkimas. Reikalavimas prisijungti po tam tikro puslapių peržiūros arba riboto duomenų kiekio rodymas neprisijungus. Tai yra, jei turite 10 stulpelių, rodykite tik 5 neprisijungusiems vartotojams.

Nedaryk šios klaidos

Nebijokite bandyti sugalvoti kažkokį sprendimą, pagrįstą roboto vartotojo agentu. Skreperis, žinantis, ką daro, gali lengvai suklaidinti šią informaciją. Pavyzdžiui, „google bot“ gali būti lengvai emuliuojamas. Labiausiai tikėtina, kad nenorite uždrausti „Google“.

Svetainių grandymo prevencija