top of page

תהליך הפיתוח

פיתוח הפרויקט כלל ארבעה שלבים עיקריים: 

  1. הכנת ה- metadata: שימוש במאגרי המידע של IMDb ו DBpedia.

  2. עיבוד המידע: הרצת כלים של NLP ו Geocoding.     

  3. הצגת התוצאות: בניית מפות אינראקטיביות לתיאור המידע בצורה ויזואלית.

  4. בניית אתר: סיכום הפרויקט והצגתו בצורה נוחה למשתמש באמצעות אתר אינטרנט.

  1. הכנת ה- metadata:
    ראשית, עלינו היה לשלוף את המידע אודות הסרטים והבמאים, איתו נבנה את הפרויקט, ולארגנו בצורה מובנית (Structured Data). 

  • תקצירי הסרטים: את המידע עבור כל סרט שלפנו מאתר IMDb, באמצעות Crawler שכתבנו בשפת Python בעזרת הספרייה Scrapy.
    ה- Crawler מקבל בתור קלט טווח של שנים, ושולף מתוך הטווח את ה- ids של הסרטים בעלי מספר ההצבעות הגבוה ביותר. לאחר מכן, כתבנו תוכנית בעזרת הספריה IMDbPY שמטרתה לשלוף את המידע עבור כל סרט, כגון: שם הסרט, שנת הוצאה, תמצית העלילה (Synopsis), שמות הבמאים וכד'. את המידע הנ"ל שמרנו בקבצי JSON (עבור כל סרט), כאשר שם הקובץ הוא ה- id של הסרט אותו הוא מתאר. 
    הערה: בפרויקט שלנו בחרנו לחקור סרטים החל משנת 1990 ועד היום, אך חשוב לציין כי תמכנו בכל טווח שנים אפשרי, המתקבל כפרמטר עבור ה Crawler. 

  • מידע אודות הבמאים: כפי שלמדנו במהלך הקורס, נעזרנו במאגר המידע של DBpedia כדי לשלוף מידע אודות הבמאים של כל סרט. לשם כך, כתבנו שאילתת SPARQL המשיגה את פרטי הבמאי, כגון שמו, מקום לידתו, תאריך לידתו וכד'. לאחר מכן, כתבנו שאילת SPARQL נוספת אשר בהינתן שם של במאי, שולפת את שמות כל הסרטים אשר ביים. לבסוף, איחדנו הכול לשאילתה אחת המבצעת את שליפת המידע לכל במאי וכן את רשימת הסרטים שביים. מידע זה נשמר בקבצי JSON, כאשר שם של קובץ הוא שם הבמאי אותו הוא מתאר. 

 2. עיבוד המידע:

לאחר שליפת ה-metadata, סיננו סרטים שלא מכילים  Synopsis או שם של במאי, כדי שנוכל לעבוד עם ה-data שלהם. לאחר מכן, הרצנו על כל Synopsis את המתייג של אוניברסיטת Stanford ובאמצעותו חילצנו את שמות המקומות המוזכרים ב- Synopsis. בהמשך, הרצנו על שמות המקומות את ה- geocoder של שירות OpenCage על מנת למצוא את הקואורדינטות שלהם. לבסוף, שמרנו את המידע בקובץ geogson שבהמשך ישמש לבניית מפת הסרטים. באופן דומה פעלנו עבור הבמאים, כאשר את ה- geocoder הרצנו על שמות מקומות הלידה שלהם.

 3. בניית המפות:

את המפות בנינו בעזרת CSS, HTML ו- JavaScript תוך שימוש בשירות mapbox. על מנת להפוך את המפות לאינטראקטיביות, הוספנו plugins שונים ששירות mapbox מציע, כגון Leaflet ו- Turf. המפות משתמשות בקבצי ה geojson שתיארנו קודם לכן, על מנת לסמן את המקומות על המפה.

4. בניית האתר:

על מנת להציג את הפרויקט בצורה נוחה, בנינו אתר באמצעות פלטפורמת Wix לבניית אתרים. בין היתר, עבדנו על עיצוב האתר, בניית התוכן,

הוספת סרטוני הדרכה לשימוש במפות, טופס יצירת קשר ועוד...

מקורות

bottom of page