bakalářská práce

Nástroj pro interaktivní mapování webových zdrojů

Text práce 7.58 MB Příloha 12.98 kB

Autor práce: Bc. Rastislav Veteška

Ak. rok: 2025/2026

Vedoucí: Ing. Willi Lazarov

Oponent: Ing. David Kohout, Ph.D.

Abstrakt:

Táto práca sa zaoberá problematikou Open Source Intelligence (OSINT), čo definujeme ako proces premeny legálne a verejne prístupných dát na využiteľné spravodajské poznatky. V dnešných dobách objem dát už dávno presahuje možnosti manuálnej extrakcie, čo si vyžaduje nasadenie automatizovaných techník, ako je web scraping. Cieľom práce je analýza technických prekážok, ktorým tieto procesy čelia. Moderné webové aplikácie implementujú sofistikované ochranné mechanizmy vrátane systémov CAPTCHA, rate limitingu a pokročilej behaviorálnej analýzy používateľa na základe pohybov myši a vzorcov interakcie. Tieto opatrenia výrazne limitujú efektivitu tradičných automatizovaných prístupov a vytvárajú potrebu pre nástroje, ktoré dokážu simulovať ľudské správanie priamo v prostredí prehliadača. V práci sú prakticky predstavené a porovnané tri existujúce webové rozšírenia na zber dát. Na základe identifikácie ich nedostatkov  je navrhnuté a implementované nové softvérové riešenie vo forme doplnku do prehliadača. Záverečná časť práce sa venuje experimentálnemu testovaniu navrhnutého nástroja.

Klíčová slova:

spravodajstvo z otvorených zdrojov, OSINT, spravodajský cyklus, web scraping, veľké jazykové modely (LLM), anti-bot ochrany, CAPTCHA, reCAPTCHA v3, webové rozšírenia

Termín obhajoby

16.06.2026

Výsledek obhajoby

obhájeno (práce byla úspěšně obhájena)

znamkaCznamka

Klasifikace

C

Průběh obhajoby

Student prezentoval výsledky své práce a komise byla seznámena s posudky. Student obhájil bakalářskou práci s výhradami a odpověděl na otázky členů komise a oponenta. Otázky: Jak složité by bylo navržené rozšíření přenést i do dalších webových prohlížečů, například Mozilla Firefox? Které části implementace by bylo nutné upravit? Hlavní ovládání nástroje je realizováno prostřednictvím popup okna. Zvažoval jste využití bočního panelu (sidebaru), který je v moderních prohlížečích běžně dostupný? Jak složitá by byla jeho implementace a jaké výhody či nevýhody by takové řešení přineslo? V jakých konkrétních oblastech či aplikacích spatřujete největší potenciál pro využití Vašeho řešení? Proč jste se chtěl vyhnout další automatizaci web scrapingu?

Jazyk práce

slovenština

Fakulta

Ústav

Studijní program

Informační bezpečnost (BPC-IBE)

Složení komise

prof. Ing. Jan Hajný, Ph.D. (předseda)
doc. Ing. Pavel Mašek, Ph.D. (místopředseda)
Mgr. Václav Stupka, Ph.D. (člen)
Ing. Adrián Tomašov, Ph.D. (člen)
Ing. Jan Dvořák, Ph.D. (člen)
Ing. David Kohout, Ph.D. (člen)
Ing. Vojtěch Sikora (člen)

Posudek vedoucího
Ing. Willi Lazarov

Bakalářská práce se věnuje zpravodajství z otevřených zdrojů (OSINT) se zaměřením na interaktivní mapování a extrakci dat z webových zdrojů. V teoretické části student popisuje doménu OSINT a techniky web scrapingu včetně jejích limitací. Tomu následuje srovnání tří existujících nástrojů, na základě kterého student identifikoval jejich nedostatky a zdůvodnil potřebu vlastního řešení.

V praktické části je představen návrh nástroje, čemuž následuje vlastní implementace. Vyvinuté řešení ve formě doplňku do prohlížeče kombinuje interaktivní výběr prvků s exportem do formátů CSV a JSON včetně podpory odesílání dat na vzdálený server přes API. Kladně hodnotím anotaci vybraných selektorů pro možnost jejich využití při vývoji plně automatických web scraperů.

Nástroj byl experimentálně otestován ve třech scénářích potvrzující jeho funkčnost. Testování je však omezeno pouze na dva webové zdroje bez pokročilé anti-scraping ochrany, jejichž překonání práce zdůrazňuje jako klíčovou přidanou hodnotu. Výhradu mám také k absenci pasivního režimu, což nástroj limituje na poloautomatický přístup.

Po formální stránce je práce na dobré úrovni a obsahuje minimum překlepů nebo typografických chyb. Místy je však popis až příliš strohý, což se promítá i do nižšího počtu normostran. Citováno je celkem 23 zdrojů složených převážně z odborných publikací a dokumentací k použitým technologiím.

Cíle bakalářské práce považuji až na výše uvedenou absenci pasivního režimu za splněné. Student práci pravidelně konzultoval a funkce nástroje postupně uvolňoval k testování. Vyvinuté rozšíření je funkční a využitelné pro sběr dat v rámci OSINT. Na základě uvedených skutečností doporučuji práci k obhajobě s hodnocením C/75. Výsledný počet bodů navržený vedoucím: 75

Známka navržená vedoucím: C

Posudek oponenta
Ing. David Kohout, Ph.D.

Student se v rámci bakalářské práce zabývá návrhem a implementací nástroje pro interaktivní mapování webových zdrojů ve formě rozšíření webového prohlížeče. Práce nejprve představuje problematiku OSINT a web scraping, následně analyzuje vybraná existující řešení a na základě identifikovaných nedostatků navrhuje vlastní nástroj umožňující interaktivní výběr a export dat z webových stránek.

Z formálního hlediska se v textu opakovaně vyskytují křížové odkazy bez uvedení typu objektu, na který odkazují. Některé diagramy jsou poměrně nepřehledné (např. obrázek 2.2), přičemž jsou využity pouze jejich rastrové verze, což dále snižuje čitelnost. Text práce je místy velmi stručný, což se odráží i na celkovém rozsahu práce, který se pohybuje na spodní hranici obvyklého rozsahu bakalářských prací. Literatura obsahuje pouze 23 zdrojů, přičemž významnou část tvoří dokumentace použitých technologií. Odborných zdrojů je méně než polovina, což považuji vzhledem k rozsahu práce za spíše podprůměrné.

K praktické části mám několik připomínek. Implementovaný doplněk je funkční a splňuje základní cíle práce, avšak v odevzdaných souborech postrádám dokumentaci (např. README), která by usnadnila instalaci a používání nástroje. Praktické využití řešení je v současné podobě poměrně omezené a za nejvýznamnější nedostatek považuji absenci pasivního režimu uvedeného v zadání práce. Přínosné by bylo také automatické označování již vybraných prvků na stránkách se stejnou strukturou.

Přes uvedené výhrady student prokázal schopnost analyzovat existující řešení, navrhnout vlastní architekturu a implementovat funkční rozšíření webového prohlížeče. Zadání práce považuji za splněné s výhradami k rozsahu implementovaných funkcionalit a navrhuji hodnocení C/74. Otázky k obhajobě:
  1. Jak složité by bylo navržené rozšíření přenést i do dalších webových prohlížečů, například Mozilla Firefox? Které části implementace by bylo nutné upravit?
  2. Hlavní ovládání nástroje je realizováno prostřednictvím popup okna. Zvažoval jste využití bočního panelu (sidebaru), který je v moderních prohlížečích běžně dostupný? Jak složitá by byla jeho implementace a jaké výhody či nevýhody by takové řešení přineslo?
Výsledný počet bodů navržený oponentem: 74

Známka navržená oponentem: C

Odpovědnost: Mgr. et Mgr. Hana Odstrčilová