Design and implementation of a framework for creating web scrapers in Swift programming language

Thesis title: Návrh a implementace frameworku pro tvorbu webových scraperů v jazyce Swift
Author: Nováček, Stanislav
Thesis type: Diplomová práce
Supervisor: Pavlíčková, Jarmila
Opponents: Král, David
Thesis language: Česky
Abstract:
Cíle této diplomové práce byly vytyčeny dva – vytvoření open-souce knihovny pro tvorbu webových crawlerů a scraperů v programovacím jazyce Swift; a implementace webového scraperu za pomocí této knihovny. Pro splnění prvního cíle byla provedena analýza scrapovacího procesu a existujících knihoven určených pro scrapování webových stránek napsaných v programovacím jazyce Swift. Po této analýze došlo k návrhu decentralizované architektury a definici požadavků, které sloužily jako podklad pro implementaci knihovny. Po dokončení implementace bylo pro zjištění splnění prvního cíle provedeno tabulkové srovnání nové knihovny s knihovnami existujícími dle určených požadavků. Pro splnění druhého cíle bylo definováno zadání a případ užití webového scraperu. Podle tohoto zadání byla navržena architektura a komponenty, které sloužily jako podklady pro implementaci programu. Pro zjištění splnění druhého cíle byla provedena demonstrace tohoto scraperu na vybraném webu.
Keywords: crawling; knihovna; scraping; Swift; web crawling; web scraping; decentralizovaný; framework
Thesis title: Design and implementation of a framework for creating web scrapers in Swift programming language
Author: Nováček, Stanislav
Thesis type: Diploma thesis
Supervisor: Pavlíčková, Jarmila
Opponents: Král, David
Thesis language: Česky
Abstract:
There were two goals defined for this diploma thesis – first, to implement an open-source library for creating web crawlers and web scrapers written in Swift programming language; second, to implement a web scraper using this library and to use this scraper on some chosen website as a demonstration. To successfully accomplish the first goal, an analysis of the scraping process and existing libraries was carried out and a decentralized architecture with a list of requirements was defined based upon the analysis. A new library was implemented according to the requirements and architecture. A tabular comparison of the new library and existing ones was made to determine if the first goal had been successfully met. To successfully accomplish the second goal, a description and a use case of a web scraper were defined. Based upon given description and the use case an architecture and components were designed. With these designs in mind a web scraping program was implemented and used to scrape data from a chosen website as a demonstration. This demonstration was carried out to determine if the second goal had been achieved.
Keywords: scraping; Swift; web crawling; web scraping; crawling; decentralized; framework; library

Information about study

Study programme: Aplikovaná informatika/Informační systémy a technologie
Type of study programme: Magisterský studijní program
Assigned degree: Ing.
Institutions assigning academic degree: Vysoká škola ekonomická v Praze
Faculty: Faculty of Informatics and Statistics
Department: Department of Information Technologies

Information on submission and defense

Date of assignment: 18. 9. 2017
Date of submission: 30. 11. 2018
Date of defense: 21. 1. 2019
Identifier in the InSIS system: https://insis.vse.cz/zp/63536/podrobnosti

Files for download

    Last update: