ABA


"האם ניתן לשלוף מידע מהאתר הבא?"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #21917 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 21917
Michoo 
חבר מתאריך 13.4.03
1760 הודעות
   00:37   21.01.17   
אל הפורום  
  האם ניתן לשלוף מידע מהאתר הבא?  
 
אני מנסה לכתוב קוד (לא משנה באיזו שפה) שישלוף נתונים מהאתר הבא (לדוגמא):
http://sport1.maariv.co.il/%D7%9C%D7%95%D7%97-%D7%A9%D7%99%D7%93%D7%95%D7%A8%D7%99%D7%9D

שעל פי יום בשבוע וערוץ יחזיר לי את השעה וסטרינג עם התוכן המשודר.

האם הדבר אפשרי?
אם כן, אשמח להדרכה.

נ.ב.
יש לציין שאין לי ידע בבניית אתרים, לא מכיר php jscript css וכו' אבל עם הכוונה נכונה אוכל להסתדר לבד
(בעבר בניתי crawler לאתר html שמוריד תוכן ע"י regular expression)

תודה מראש



                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  אפשרי בוודאות ובהמון שפות חוצה גם באדום 21.01.17 02:37 1
     תודה על התגובה Michoo  21.01.17 11:43 2
         כמו שאני רואה את זה - יש לך 2 אפשרויות -UC- 21.01.17 11:55 3
         הכי קל לדעתי חוצה גם באדום 21.01.17 17:31 4

       
חוצה גם באדום לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 4.7.15
2002 הודעות, 12 פידבק
   02:37   21.01.17   
אל הפורום  
  1. אפשרי בוודאות ובהמון שפות  
בתגובה להודעה מספר 0
 
   אבל ללא ידע בתכנות חושב שיהיה לך קשה.
לא בדקתי ממה מורכב הדף שציינת (אני במובייל) אבל בעיקרון תצטרך לדעת לכתוב קוד שישחזר בקשות GET עם היום והערוץ ויקבל פלט html עם התכניות של אותו יום (לתוך משתנה), אותו תצטרך לנתח עם פונקציות בשפה שתבחר (שמחפשות מחרוזות לפי ביטויים רגולריים) ולהכניס הנתונים המזוקקים למערך של מפתחות (תכנית <= שעה), להכניס את השעה הנוכחית בישראל לתוך משתנה, ואז להשוות איזו שעה מכל המפתחות שבמערך הכי קרובה מלמטה לשעה הנוכחית שבמשתנה, ואז פשוט לפלוט למסך את שם התכנית (שהוא הערך שמוחזק במפתח המתאים).

מציע לך לעשות ב-php ולהעלות לאיזה שירות אכסון אתרים חינמי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Michoo 
חבר מתאריך 13.4.03
1760 הודעות
   11:43   21.01.17   
אל הפורום  
  2. תודה על התגובה  
בתגובה להודעה מספר 1
 
ראשית, יש לי ידע בתכנות (c, matlab, python וכו') אבל אין לי רקע בבניית אתרים.

האם תוכל להרחיב לגבי בקשת ה-get?
כל השאר הוא דיי טרויאלי מבחינתי.
איך אני מוצא את הבקשה הזאת בדף ה-html של העמוד עצמו?

כאשר אני מסתכל על דף ה-html אני לא מצליח למצוא את קטע הקוד שמטפל בתוכן של לוח השידורים. אני מניח שיש מאחורי הקלעים database כלשהו שהאתר פונה אליו, אבל אני לא מצליח למצוא איפה זה נמצא בקוד שכן חשוף אלי.

@חוצה גם באדום@



                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
-UC- לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.8.02
21922 הודעות, 1 פידבק
   11:55   21.01.17   
אל הפורום  
  3. כמו שאני רואה את זה - יש לך 2 אפשרויות  
בתגובה להודעה מספר 2
 
1. להתממשק מול ה-api של האתר(תצטרך לבדוק איתם אם הם יכולים לספק לך אחד)
2. להוריד את העמוד כולו(get ל-html) ולנתח ממנו את הנתונים וזה תלוי בשפה שבה אתה משתמש - לצורך העניין , הקטע קוד שמציג את הנתונים על גבי העמוד מתחיל ככה עבור כל רשומה:

<div class="schedule-item channel-index-0" ng-class="{current: data.current}" data-ng-repeat="data in dataLive.dataSelect">

ככה שמלעשה כל ה-data קיים בתוך אובייקט בקליינט שנקרא dataLive...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
חוצה גם באדום לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 4.7.15
2002 הודעות, 12 פידבק
   17:31   21.01.17   
אל הפורום  
  4. הכי קל לדעתי  
בתגובה להודעה מספר 2
 
   ערכתי לאחרונה בתאריך 21.01.17 בשעה 18:03 בברכה, חוצה גם באדום
 
יהיה להשתמש בתוסף לפיירפוקס livehttpheader שמראה בקשות ותשובות html בזמן אמת תוך כדי גלישה. תבחר באתר איזה יום וערוץ כשהתוסף פועל ותראה איזה אלמנטים get נשלחים עד שתדע לבנות את הבקשה בקוד, נניח ב-PHP עם פונקציית (url)file_get_contents שכמו שתראה בדוגמאות יכולה לשמור פלט html לתוך משתנה.

אתה יכול גם להשתמש בתכונת ה-inspect elements המובנית בדפדפנים (חפש בגוגל איזה צירוף מקשים מפעיל אותה בדפדפן שלך) ולבדוק עם העכבר על הדף מה בקוד שייך למה, אבל זה יותר כאב ראש לדעתי מאפשרות הקודמת.

That said, עדיין לא ראיתי איך בנוי הקוד של הדף שציינת..
מה שאמרתי זו הדרך הכי פשוטה. יש מקרים שמסתבכים ואז צריך לעבוד עם ספריית curl (שגם עובדת ב-php) שיותר מורכב לעבוד איתה אבל מאפשרת יותר אפשרויות כמו בקשות post או עבודה באתרים שמחייבים לשמור cookies ועוד..

* אני בספק אם האתר מספק api למשתמשים לגשת ישירות לנתונים

@Michoo@


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net