Verkkoharavaohjelman toteutus Pythonilla
Takamäki, Jimi (2024)
Takamäki, Jimi
2024
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202404298195
https://urn.fi/URN:NBN:fi:amk-202404298195
Tiivistelmä
Insinöörityössä kehitettiin verkkoharavaohjelma käyttäen Python-ohjelmointikieltä. Ohjelmasta oli tarkoitus luoda mahdollisimman helppokäyttöinen ratkaisu automatisoidun tiedon keräykseen, ja se tulisi toimimaan useilla erilaisilla verkkosivuilla. Ohjelman tulevilla käyttäjillä ei olisi kattavaa ohjelmointiosaamista, joten verkkoharavoiden määrittely haluttiin toteuttaa ohjelmakoodista riippumattomasti.
Ohjelma toteutettiin komentoriville, josta sen käyttö onnistuu yksinkertaisten komentojen avulla. Yksittäisten haravoiden suorituksen lisäksi ohjelma tukee myös suurten haravamäärien ajastamista, mikä mahdollistaa automatisoidun, pitkäkestoisen ja säännöllisen datan keräyksen. Suoritettavat verkkoharavat konfiguroidaan erillisissä YAML-kielisissä konfiguraatiotiedostoissa, joista ohjelma lukee tarvittavat tiedot ajon aikana.
Konfiguraation tukemat asetukset mahdollistavat erilaisilla tavoilla toimivien sivujen haravoinnin. Konfiguroidut verkkoharavat kykenevät esimerkiksi vierittämään sivua alaspäin, siirtymään tuoteluettelosivujen välillä sekä lataamaan sivulle lisää sisältöä painikkeiden kautta. Näiden toiminnallisuuksien avulla tietoja saadaan kerättyä kattavasti erilaisilta sivuilta.
Ohjelma toteutettiin komentoriville, josta sen käyttö onnistuu yksinkertaisten komentojen avulla. Yksittäisten haravoiden suorituksen lisäksi ohjelma tukee myös suurten haravamäärien ajastamista, mikä mahdollistaa automatisoidun, pitkäkestoisen ja säännöllisen datan keräyksen. Suoritettavat verkkoharavat konfiguroidaan erillisissä YAML-kielisissä konfiguraatiotiedostoissa, joista ohjelma lukee tarvittavat tiedot ajon aikana.
Konfiguraation tukemat asetukset mahdollistavat erilaisilla tavoilla toimivien sivujen haravoinnin. Konfiguroidut verkkoharavat kykenevät esimerkiksi vierittämään sivua alaspäin, siirtymään tuoteluettelosivujen välillä sekä lataamaan sivulle lisää sisältöä painikkeiden kautta. Näiden toiminnallisuuksien avulla tietoja saadaan kerättyä kattavasti erilaisilta sivuilta.