Recipe Web Scraper

Πτυχιακή Εργασία uoadl:3257816 48 Αναγνώσεις

Μονάδα:
Τμήμα Πληροφορικής & Τηλεπικοινωνιών
Πληροφορική
Ημερομηνία κατάθεσης:
2023-01-24
Έτος εκπόνησης:
2023
Συγγραφέας:
ΠΕΤΡΙΔΟΥ ΑΝΝΑ
Στοιχεία επιβλεπόντων καθηγητών:
Ντούλας Αλέξανδρος, Επίκουρος Καθηγητής, Τμήμα Πληροφορικής και Τηλεπικοινωνιών, Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών
Πρωτότυπος Τίτλος:
Recipe Web Scraper
Γλώσσες εργασίας:
Ελληνικά
Αγγλικά
Μεταφρασμένος τίτλος:
Σαρωτής Συνταγών Μαγειρικής
Περίληψη:
Σκοπός της εργασίας αυτής είναι η δημιουργία μίας εφαρμογής, που θα συλλέγει δεδομένα από πολλές διαφορετικές πηγές και θα τα προσφέρει συλλογικά στο χρήστη με τρόπο και λειτουργικότητες που θα τον διευκολύνουν.
Η εργασία αυτή λοιπόν αφορά μία εφαρμογή η οποία σαρώνει 5 μεγάλους ιστότοπους με συνταγές μαγειρικής, μαζεύει όση πληροφορία χρειάζεται από αυτούς και την περνάει σε μία βάση δεδομένων. Στη συνέχεια, μέσω του backend και του frontend που έχουν δημιουργηθεί, η εφαρμογή προσφέρει στο χρήστη μία σειρά από λειτουργίες και δυνατότητες τις οποίες μπορεί να εκμεταλλευτεί κάνοντας χρήση της διεπαφής χρήστη που έχουμε υλοποιήσει (user interface).
Πιο συγκεκριμένα, αρχικά δημιουργήσαμε τους 5 web crawlers, που ουσιαστικά σαρώνουν τις ιστοσελίδες, φιλτράροντας όλους τους συνδέσμους τους και αποθηκεύοντας μόνο όσους αφορούν συνταγές, σε ένα ξεχωριστό αρχείο κειμένου. Η υλοποίηση των crawlers έγινε με python χρησιμοποιώντας το “scrapy”.
Έπειτα, οι 5 web scrapers που έχουμε υλοποιήσει σε java, σαρώνουν κάθε σύνδεσμο που διαβάζουν από τα αρχεία κειμένου και αποθηκεύουν τις επιθυμητές πληροφορίες για την κάθε συνταγή, σε μία βάση δεδομένων MySQL. Το scraping των επιθυμητών δεδομένων από κάθε site με java γίνεται με τη βοήθεια του εργαλείου “Jsoup”.
Αφού περαστεί όλη η απαραίτητη πληροφορία στη βάση δεδομένων, το REST API που υλοποιήσαμε σε java με “spring boot”, παρέχει μια σειρά από λειτουργίες αναζήτησης στον χρήστη, που φροντίζει να παραδοθούν στο frontend που υλοποιήσαμε.
Τέλος, η διεπαφή χρήστη, δηλαδή το frontend, για το οποίο χρησιμοποιήσαμε “Vue.js”, φροντίζει τα δεδομένα και οι λειτουργίες της εφαρμογής να παρουσιάζονται με τρόπο εύχρηστο στο χρήστη.
Αποτέλεσμα αυτής της εργασίας είναι, η δημιουργία ενός project, περνώντας από όλες τις φάσεις του development, βλέποντας και μαθαίνοντας την πορεία για έναν πλήρη κύκλο σχεδιασμού και υλοποίησης μιας εφαρμογής, από τον οποίο προκύπτει μία εφαρμογή λειτουργική αλλά και χρήσιμη.
Κύρια θεματική κατηγορία:
Τεχνολογία – Πληροφορική
Λέξεις-κλειδιά:
εξόρυξη, σάρωση δεδομένων, διεπαφή χρήστη, απόξεση, σάρωση ιστού
Ευρετήριο:
Ναι
Αρ. σελίδων ευρετηρίου:
7
Εικονογραφημένη:
Ναι
Αρ. βιβλιογραφικών αναφορών:
38
Αριθμός σελίδων:
91