Webová aplikace pro vyhledávání receptů
Web application for searching recipes
bakalářská práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/176097Identifikátory
SIS: 245727
Kolekce
- Kvalifikační práce [11239]
Autor
Vedoucí práce
Oponent práce
Peška, Ladislav
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Informatika se specializací Programování a vývoj software
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
12. 9. 2022
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Čeština
Známka
Výborně
Klíčová slova (česky)
recept|znalostní graf|otevřená data|propojená data|rdf|sparqlKlíčová slova (anglicky)
recipe|knowledge graph|open data|linked data|rdf|sparqlCílem této práce je vyvinout webovou aplikaci pro vyhledávání receptů založenou na agregaci datových sad z existujících webových stránek s recepty a jejich obohacení o data ze znalostních grafů. Znalostní grafy byly zastoupeny projekty DBpedia a Wikidata, z nichž byla získána rozšiřující data o ingrediencích. Data byla extrahována s pomocí knihovny Apify pro web scraping a v dokumentovém modelu uložena do databázového systému Apache CouchDB. Aplikace uživateli poskytuje různé možnosti filtrování vý- sledků včetně fasetového vyhledávání, k čemuž využívá platformu Apache Solr. Zaměřuje se zejména na vyhledávání dle ingrediencí. Jedná se o tzv. single-page aplikaci implemen- tovanou pomocí knihovny React.js pro uživatelské rozhraní a frameworku Express.js na straně serveru. Obě části aplikace jsou psány staticky typovaným jazykem TypeScript a komunikují spolu prostřednictvím REST API. 1
This thesis aims to develop a web application for searching recipes. The search for recipes is based on aggregating datasets from the existing recipe websites and extending the data using knowledge graphs. Knowledge graphs were represented by DBpedia and Wikidata projects. These were used to gather data about ingredients. Data were extracted using the Apify web scraping library and stored in the database system Apache CouchDB using the document model. The application provides the user with different options for filtering results, including faceted search. Faceted search is implemented using the Apache Solr platform. The focus is on searching based on ingredients. The web application is a single-page application implemented using the React.js library at the frontend and the Express.js framework at the backend. Both parts of the application are written in statically typed language TypeScript and exchange information through REST API. 1