Original title:
Automatizace webového prohlížeče
Translated title:
Web Browser Automation
Authors:
Bastl, Vojtěch ; Polčák, Libor (referee) ; Burget, Radek (advisor) Document type: Master’s theses
Year:
2019
Language:
cze Publisher:
Vysoké učení technické v Brně. Fakulta informačních technologií Abstract:
[cze][eng]
Tato práce se zabývá automatizací webového prohlížeče - nástroji, umožnující programové ovládání programu pro prohlížení webových stránek. Nejprve diskutuje existující řešení, s důrazem na nástroje z rodiny Selenium Suite a PhantomJS. Následně je probrána interní reprezentace webové stránky v renderovacích jádrech prohlížečů Gecko a WebKit. Práce se poté zaměří na aplikační rozhraní webového prohlížeče, které nabízí klientským skriptovacím jazykům. Zároveň zde budou zmíněny standardy, podporující tyto rozhraní. Jádro práce tvoří návrh a implementace nástroje, jež umožní, pomocí knihovny Selenium WebDriver, ovládat webový prohlížeč a provézt získání dat o webové stránce. Práce ukazuje vnitřní uspořádání, popisuje vstupní konfigurační soubor a aplikační rozhraní. Také se zabývá problematikou získání dat o stránce a jejich převod na jednotný strukturovaný výstup. Zároveň demonstruje funkčnost pomocí jednotkových testů a ovládání reálných webových stránek.
This work deals with the automation of a web browser - the tools that allow programmatic control of the program for browsing the web pages. First, it discusses the existing solutions with focus on the tools from the Selenium Suite family and PhantomJS. Further, the internal representation of the web pages in the Gecko and WebKit browser engines is discussed. The work then focuses on the web browser application interface available for client-side scripting. The relevant standards are discussed as well. The core part of the thesis is dedicated to the design and implementation of a tool that allows to control a browser using the Selenium WebDriver tool and to extract data about the targert web page. The work presents an internal architecture, configuration files and the application interface of the designed tool. The topic of extracting detailed data about the page and its transformation to a unified structured description is covered as well. Finally, the performed unit tests and tests on real web pages are described.
Keywords:
BOM; Browser engine; CSSOM; DOM; Selenium; Web Browser Automation; WebDriver; automatizace webového prohlížeče; BOM; CSSOM; DOM; renderovací jádro prohlížeče; Selenium; WebDriver
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/180342