Kategória: Adatforrások

Ha szeretnénk választ kapni olyan kérdésekre mint pl. hogy hány webhely létezik egy adott nyelven, netán hány webshop, vagy akár melyek a legnépszerűbb tartalomkezelő rendszerek, akkor nem feltétlenül kell a nulláról induljunk: segítségül hívhatjuk azon szervezetek munkáját például, melyek archiválják a weben található információkat, biztonságtechnikai okokból adatokat gyűjtenek az internetről, marketingeseknek nyújtanak adatokat a webhelyekről, illetve információt rendszereznek akár enciklopédikus jelleggel, akár keresőadatbázis formájában.

Adatok a weblapok archiválóitól

Két komoly szervezet van, mely számottevő részét archiválja a webnek. Az egyik a sokak által ismert Internet Archive, a másik pedig az inkább a szakmai közönség érdeklődésére számot tartó munkát végző Common Crawl.

Az Internet Archive folyamatosan térképezi fel és menti el a weben talált weblapokat, továbbá egyszerűen elérhetővé teszi egy webes felületen az egyes weblapok korábbi verzióit is. Adatbázisában ezért rengeteg, már nem működő domainnév és weblap található. Nagy lefedettsége miatt azonban igen hasznos eszköz pl. a magyar webről adatot gyűjtők számára.

A Common Crawl nagyságrendileg kéthavonta áll neki a web feltérképezésének, és a gyűjtött weblapokat ezek alapján külön-külön adatbázisban teszi közzé. Emiatt a gyűjtött adatok mögött igen nagy hányadban most is működő weblapok állnak, noha az egyes gyűjtések között nem feltétlenül teljes az átfedés, ezért érdemes több gyűjtés adataival dolgozni. A nyers adatokat továbbá számos helyen és formában feldolgozzák, mint például a Web Data Commons oldalán.

Mindkét szervezet lehetővé teszi az általuk gyűjtött weblapok indexének lekérését CDX formátumban, ami jó kiindulási alap a további vizsgálatokhoz, de a Common Crawl domainszintű adatbázisokat is közzétesz időnként.

A magyar weboldalakat továbbá archiválja az Országos Széchényi Könyvtár is. Webtér szintű aratásuk legutóbb 1 371 617 URL-ből kiindulva (aldomaineket is kiindulópontnak kezelve) max. két szint mélységig szkrépelve, 158 416 570 weblapot archiváltak le a .hu domain alatt és azon kívül található magyar webszájtokról. Sajnos, jogi okokból az archívum adatai nagyon korlátozottan érhetőek el (olvasóteremben, másolási lehetőség nélkül), így nem használhatóak fel céljainkra.

Adatbázisok internetbiztonsági kutatásokhoz

A Project Sonar illetve a tevékenysége eredményeként közzétett Rapid7 Open Data adatbázis úgy keletkezik, hogy végigszkennelik az összes IP címet, és a rajtuk elérhető szolgáltatásokat. A weboldalakat kiszolgáló szerverek szkennelése révén pedig melléktermékként rengeteg domainnévhez is hozzájuthatunk. A kinyert adatok régebben publikusan is elérhetőek voltak, manapság azonban csak néhány speciális esetben kaphatunk hozzáférést.

Elsősorban biztonsági kutatás céljából kínálja hasonló jellegű, „mindent szkennelünk” hozzáállással szerzett adatait Censys is, mely kutatóknak hozzáférést ad adatbázisaihoz, de online keresőfelületén számos paraméter szerint kereshetővé teszi adatbázisát, így ha nem is juthatunk hozzá összes adatukhoz, de betekintést nyerhetünk abba, hogy milyen információkat gyűjtenek.

További játékos még ebben a ligában a netlas.io is. Intuitív keresőfelületén rákereshetünk bármilyen IP-címre vagy domainnévre, így akár az összes .hu domainre is, melyből a cikk írásakor 645 724-et tartott nyilván a rendszer.

Ha pedig esetleg valaki saját maga szeretne mindent szkennelni, akkor hasznos lehet megismerkednie a Zmap projekttel.

SEO adatbázisok

A keresőoptimalizáló szakembereknek is szüksége van sok-sok adatra a különböző weboldalakról, ezek közül a leghasznosabb a mi céljainkra az, hogy adatokat gyűjtenek arról, hogy ki linkel kit. Mivel magyar nyelvű oldalak legtöbbször magyar nyelvű oldalakat linkelnek, illetve egy adott magyar oldalra mutató külső linkek többsége is magyar nyelvű lesz, ezért ez is sokat segíthet abban, hogy új webhelyeket fedezzünk fel – különösen pl. ha például nyelv szerint, nem pedig domainnév-végződés szerint szeretnénk gyűjtést végezni. Nagyobbacska adatbázisokat tesz elérhetővé például az Ahrefs, a Majestic SEO vagy a SEO Spyglass.

Enciklopédikus jellegű adatgyűjtők

A Wikipedia vagy az OpenStreetMap jellegénél fogva messze nem tárol annyi domainnevet ill. weblapot, mint a fent említett források. Nagy előnyük viszont, hogy strukturált adatkörnyezetben találkozhatunk ezekkel az URL-ekkel. Nem utolsósorban pedig lehetővé teszik az adatbázisuk letöltését, úgyhogy az adatok megszerzéséhez nem kell szkrépelni a weboldalaikat.

Keresőadatbázisok

A legtöbb és legfrissebb adatot a különböző internetes keresőoldalak gyűjtik és teszik elérhetővé a webről, mint pl. a Google a Bing vagy a Yandex. A gond csak az, hogy szolgáltatásukat pl. a fent említett netlas.io keresőfelületével ellentétben nem úgy alakították ki, hogy az közvetlenül a hasznát szolgálja kutatásunknak, ezért hát csak kerülőutakon lehet ezekből az oldalakból adatokat kicsiholni: kitalálni, hogy milyen jellemző keresőszavak segítségével tudjuk fellelni a legtöbb új, ismeretlen domaint, majd e kereséseket szépen, lassan vagy több helyről elosztva elvégezni, végül a találatokat elmenteni.

Közösségi média platformok

Ne feledjük továbbá, hogy a weben található információ egyre nagyobb része a nyitott webről a zárt, pl. közösségi média platformokra költözött. Ennek egy szintén számottevő hozadéka, hogy e platformokról is gyakran hivatkoznak a nyílt webre, azaz a hagyományos, saját domainneveken található webhelyekre. A probléma esetünkben csak az, hogy e platformok szkrépelése még problémásabb, mind technikai, mind jogi szempontból.

További lehetőségek

A világ változatosságához hasonlóan a web is rendkívül sokszínű, úgyhogy lehetetlen felsorolni az összes lehetőséget, mely révén feltérképezhetjük a webet, vagy annak egy meghatározott szegmensét. A fentiekben elsősorban a nagyobb adatbázisokat vettem számba főbb típusaik szerint, nem törekedve az összes lehetséges szolgáltató felsorolására e kategóriákon belül sem.

Mindezen túl is még számos általános vagy helyi érdekű adatforrás lehet segítségünkre, mint pl.:

  • Nem minden domainnév-végződés esetében igaz, de pl. a .hu regisztrátora közzéteszi az újonnan bejegyzés alatt álló domainneveket.
  • Noha manapság már kimentek a linkgyűjtemények a divatból, vannak azonban olyan források, mint pl. a lap.hu oldalak, melyekről egyszerűen, viszonylag strukturált adatokat nyerhetünk ki.

Végül de nem utolsósorban a fenti adatforrások nélkül is lehetséges a web feltérképezése, illetve ha saját magunk a nulláról kezdjük a feltérképezést, akkor leellenőrizhetjük, hogy meddig jutottunk a weboldalak feltérképezésével az egyes adatforrások segítségével.

A web felfedezése a nulláról

Első lépésben számba vesszük a domainnevekben használható karaktereket [a-z0-9-], kikeverjük az összes technikailag lehetséges variációt: 37*37 + 36*37*36 + 36*37*37*36 + 36*37*37*37*36 + …

Az jól látszik, hogy ha csak a maximum ötbetűs domainneveket szeretnénk átfésülni, akkor már túlléptük a 67 millió lehetséges kombinációt, ami elsőre óriási számnak tűnik, de mivel a legtöbb domain esetében hamar visszajön a válasz, hogy nem létezik ilyen, ezért viszonylag gyorsan át lehet még ezeket pörgetni.

Ha ezzel megvagyunk, akkor pluszban felfedezhetünk majd mindenféle egyéb domainnevet, amire e rövid domainnevek irányítanak át. A legtöbb új, öt karakternél hosszabb domainnévre mégis úgy tehetünk szert, hogy megnézzük, mely egyéb webhelyekre linkelnek a már összegyűjtött domaineken.

Ha már van jópár működő domainnevünk, köztük hosszabbak is, akkor akár végigmehetünk rajtuk úgy is, hogy a permutációk közül kizárjuk azokat, melyek nagyon nem hasonlítanak potenciálisan értelmes domainnevekre, mint pl. 4h6u3a.hu, például az alapján, hogy az ismert domainnevekben mekkora eséllyel követi egymást két karakter, vagy fordul elő egy karakterpár, triplet, stb.

Konklúzió

Anyagi lehetőségeinktől és elszántságunktól függően számos különböző adatforrással dolgozhatunk, ha sok webhelyet szeretnénk valamilyen célból összegyűjteni, pl. arra az alapvető kérdésre keresünk választ, hogy mennyi magyar webhely létezik. Egy részük már készen nyújtja az információt, más részükből pedig az adatgyűjtés körülményei és az adatformátum ismeretében nekünk kell kinyerni az adatokat, végül a legnehezebb eset, amikor saját szkriptet kell írnunk ahhoz, hogy egy weboldalról leszedegessük a minket érdeklő, publikusan elérhető információkat.