Web-kaavinta Semalt-asiantuntijan kanssa

Web-kaavinta, joka tunnetaan myös nimellä web-sadonkorjuu, on tekniikka, jota käytetään tietojen keräämiseen verkkosivustoilta. Verkkokorjuuohjelmisto voi käyttää verkkoa suoraan HTTP: n tai selaimen avulla. Vaikka ohjelmiston käyttäjä voi toteuttaa prosessin manuaalisesti, tekniikka sisältää yleensä automatisoidun prosessin, joka toteutetaan web-indeksointirobotin tai robotin avulla.

Web-kaavinta on prosessi, jossa jäsennelty tieto kopioidaan verkosta paikallisiin tietokantoihin tarkistusta ja hakemista varten. Siihen sisältyy verkkosivun nouto ja sen sisällön purkaminen. Sivun sisältöä voidaan jäsentää, hakea, uudelleenorganisoida ja sen tiedot kopioida paikalliselle tallennuslaitteelle.

Verkkosivut on yleensä rakennettu tekstipohjaisista merkintäkieleistä, kuten XHTML ja HTML, jotka molemmat sisältävät suurimman osan hyödyllisestä tiedosta tekstin muodossa. Monet näistä verkkosivustoista on kuitenkin suunniteltu ihmisten loppukäyttäjille eikä automaattista käyttöä varten. Tästä syystä kaavintaohjelmisto luotiin.

On monia tekniikoita, joita voidaan käyttää tehokkaaseen raaputtamiseen. Jotkut niistä on kehitetty alla:

1. Ihmisen kopiointi ja liittäminen

Ajoittain edes parhaat web-kaavintyökalut eivät voi korvata ihmisen manuaalisen kopioinnin ja liittämisen tarkkuutta ja tehokkuutta. Tämä soveltuu enimmäkseen tilanteisiin, joissa verkkosivustot asettavat esteitä koneiden automatisoinnin estämiseksi.

2. Tekstikuvion vastaavuus

Tämä on melko yksinkertainen, mutta tehokas tapa lähettää tietoja verkkosivuilta. Se voi perustua UNIX grep -komentoon tai vain tietyn ohjelmointikielen, esimerkiksi Python tai Perl, säännölliseen lausekkeeseen.

3. HTTP-ohjelmointi

HTTP-ohjelmointia voidaan käyttää sekä staattisille että dynaamisille verkkosivuille. Tiedot puretaan lähettämällä HTTP-pyyntöjä etäpalvelimelle hyödyntäen socket-ohjelmointia.

4. HTML-jäsennys

Monilla verkkosivustoilla on yleensä laaja sivukokoelma, joka on luotu dynaamisesti taustalla olevista rakennelähteistä, kuten tietokannasta. Tässä samaan luokkaan kuuluvat tiedot koodataan samanlaisille sivuille. HTML-jäsentämisessä ohjelma yleensä tunnistaa tällaisen mallin tietyssä tietolähteessä, hakee sen sisällön ja kääntää sen sitten tytäryhtiömuotoon, jota kutsutaan kääreksi.

5. DOM-jäsennys

Tässä tekniikassa ohjelma upottaa täysimittaiseen selaimeen, kuten Mozilla Firefox tai Internet Explorer, asiakaspuolen komentosarjan luoman dynaamisen sisällön noutamiseksi. Nämä selaimet voivat myös jäsentää verkkosivut DOM-puuksi sen mukaan, millaisilla ohjelmilla voidaan purkaa sivujen osia.

6. Semanttisen huomautuksen tunnistaminen

Kaapattavat sivut voivat sisältää semanttisia merkintöjä ja merkintöjä tai metatietoja, joita voidaan käyttää tiettyjen datan katkelmien löytämiseen. Jos nämä merkinnät upotetaan sivuille, tätä tekniikkaa voidaan pitää DOM-jäsennysten erityistapauksena. Nämä merkinnät voidaan myös järjestää syntaktiseksi kerrokseksi ja sitten tallentaa ja hallita erillään verkkosivuista. Sen avulla kaavin voi noutaa datakerroksen sekä komennot tästä kerroksesta ennen kuin se kaataa sivut.