Jak získáváme data pro textovou analýzu
Data pro textovou analýzu bývají často dostupná pouze ve webových prezentacích v nestrukturované podobě. Jak data co nejsnáze získat?
Pro účely stahování textu z webových stránek existují specializované nástroje zvané “scraper” nebo “crawler”. Pro některé programovací jazyky existují frameworky, které značně zjednodušují vytvoření scraper nástroje pro jednotlivé webové stránky. My používáme jeden z nejpopulárnějších frameworků Scrapy, napsaný v jazyce Python.
Jako praktický příklad lze uvést nástroj pro sběr dotačních pobídek jako podkladů pro Dotační manager, největší portál o dotacích v ČR, který sdružuje “výzvy” z nejrůznějších veřejných zdrojů. Nástroj automatizovaně projde strukturu webového portálu, například Agentury pro podnikání a inovace, najde stránku dotační výzvy a danou stránku strojově zpracuje do strukturovaného formátu. Nástroj je možné opakovaně spouštět, aby zachytil i nově publikované výzvy. Celý nástroj včetně zdrojového kódu je dostupný na adrese: http://git.pef.mendelu.cz/MTA/oppik-scraper/.
Uvedený příklad je poměrně jednoduchý, v praxi to bývá složitější. Struktura webových stránek je na každém portále jiná, často není jednotná ani v rámci portálu, mění se v čase atd. Abychom nemuseli znovu a znovu psát podobné nástroje pro každý zdroj dat zvlášť, vyvíjíme vlastní robustní crawler, který dokáže textové údaje získávat automaticky z různých zdrojů.
Vladimír Vacula