כמו שכתבתי כבר לא פעם, אני אוהב להאזין לפודקאסטים. במילה פודקאסט אני מכליל גם קובצי שמע מסוגים שונים שלא הוקלטו כפודקאסט ולא מועלים לאינטרנט כפודקאסט.
אלא מה? (וכאן נכנסת הבעיה. לא חשבתם שטרחתי לכתוב פוסט אם הכול טוב, נכון?) כיון שזה לא באמת פודקאסט, אני, למרבה הזעזוע, נאלץ להוריד אותו ידנית ולהעביר אותו לטלפון שלי במקום שהטלפון יעשה הכול אוטומטית כמו שראוי לטלפון מחונך.
ניקח לדוגמה את האוניברסיטה המשודרת. הרצאות (חלקן מעניינות וחלקן ירדימו אתכן מהר) עולות לאינטרנט ויש להן אפילו rss אבל אם אני רוצה להוריד את יסודות בכלכלה התנהגותית (וכדאי לכם לרצות כי זו סדרה מדהימה) אז אני יכול אפילו להירשם ל־rss אבל בסוף אני אצטרך להזיע ולהוריד ידנית.
אז אחרי ההקדמה הזו, ישבתי וכתבתי (בעזרתו האדיבה של תומר) כלי php שירוץ על השרת שלי או שלכם יינתח את הזנת הרסס וימיר אותה למשהו ש־beyondpod או כל יישום אחר יוכל לקרוא. לכלי קוראים בצורה ממש מפתיעה feed2podcast והשימוש בו יחסית פשוט ולא דורש ידע נרחב בתכנות.
הוראות:
- מורידים את feed2podcast. אפשר להוריד את הגרסה היציבה מפה או את הגרסה האחרונה מפה.
- מחלצים את הקובץ.
- מעתיקים את הקובץ feed.php, משנים את שמו ועורכים אותו לפי ההגדרות הרצויות.
setType($type);
$feed2podcast->setUpdateHours($updateHours);
$feed2podcast->setImage($image);
$feed2podcast->setDelStr($delStr);$feed2podcast->getFeed();
- $feed (חובה) – הוא כתובת ההזנה שרוצים לנתח.
- $type – הוא סוג הקבצים. אם לא מזינים סוג אז הוא יהיה mp3.
- $updateHours – זה הזמן בשעות שלאחריו תוקף ההזנה שעל השרת שלכם יפוג וההזנה המקורית תנותח שוב.
- $image – כתובת לתמונה עבור ההזנה שלכם. תכנות פודקאסטים בדרך מציגות אותה ליד שם הפודקאסט. כבררת מחדל זה ריק ואפשר להשאיר את זה ככה.
- $delStr – מאפשר למחוק חלק מהכתובת של הקבצים. גל"צ למשל מעבירים אותם דרך קובץ הורדות שמפריע להוריד את הקבצים לטלפון ישירות.
- עכשיו מעלים את הקבצים לשרת שלכם דרך ftp, scp, cpanel או טלפתיה.
- גולשים לכתובת של ההזנה החדשה, למשל: http://yoursite.co.il/feed2podcast/yourfeed.php, רואים את ההזנה עם הקבצים ונרשמים אליה.
דוגמה לקורס עידן התגליות.
/* required */
$feed='http://glz.fm/index.php?action=media;sa=rss;album=108'; //url of the feed
/* optional */
$type=''; //file type, default mp3
$updateHours=5; //How often the cache is updated (in hours), default 5
$image='http://glz.fm/bu-2012-tue.jpg'; //podcast logo url, default none;
$delStr='http://glz.fm/dl.php?file='; // delete substring in file url. for sites that redirect the download via other
את התוצאה ניתן לראות על השרת שלי ואף להירשם אליה.
אני מקווה שכלי יביא תועלת גם לכם. אני הולך לנצל את הזמן שחסכתי על הורדת הקבצים על שמיעת עוד פודקאסטים. אה, תוך כדי קיפול כביסה. מישהו רוצה לעזור לי?
טוב מצאתי כמה רגעים לנסות. הפעלתי את הכלי על הכתובת הבאה http://sheela.org.il/2011-09-12-04-45-00.feed?type=rss כנראה שיש לי בכלל בעיית חוסר תאימות בשרת כי העמוד פלט את הודעת השגיאה הבאה:
שגיאה בניתוח XML: זבל אחרי מרכיב מסמך
מיקום: http://megira.co.cc/f2pc/sheela.php שורה מספר 2, עמודה 1:
Warning: file_get_contents() [function.file-get-contents]: http:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/megiraco/public_html/f2pc/feed2podcast.php on line 39
^
@אריאל: זה אומר שהפונקציה file_get_contents חסומה בשרת שלך. אתה צריך לפנות לספק כדי שיפתח אותה.