אתר גלי צה"ל הוא אתר עשיר בתכנים משידורי התחנה (ובנוי קצת עקום). לכאורה זהו פתרון מצוין עבור כל בעלי נגני הmp3 למיניהם אך מתברר שלא. האתר מאפשר האזנה דרכו בלבד ולא מאפשר להוריד את התוכניות למחשב ולנגן.
מכיון שיש לי עוד כמה משימות בחיי מלבד לשבת ליד המחשב ולהאזין לתכניות גלי צה"ל, חיפשתי דרך להוריד אותן למחשב. נתנאל היה נחמד וכתב סקריפט ב־bash שמקליט את כל התוכניות מעמוד נבחר. עבדנו עליו עוד קצת (בעיקר הוא, אני קצת בדקתי בגוגל כדי להבין משהו ב־bash) כדי שיהיה נוח והנה הוא לתועלת הציבור.
שימו לב שיש צורך בהתקנת החבילה mplayer (להתקנה באובונטו) ובתלויות שלה כדי להפעילו.
#!/bin/bash
if [ "$1" == "" ] && [ ! -e res ]; then
echo "Enter url:"
read url
else
url=$1
fi
if [ ! -e res ]; then
wget $url -O html
cat html | grep -o "http.*wma" > res
rm html
fi
for x in $(cat res)
do
NAME=$(echo $x | cut -d '/' -f6)
mplayer -dumpstream $x -dumpfile $NAME
echo "$x" >> res2
sed -i 1d res
done
rm res
הסקריפט מקבל את כתובת העמוד כפרמטר או כקלט, ניגש לעמוד ואוסף ממנו את כל קישורי התוכניות ואז עובר עליהן ומקליט אותן. כתובות של תוכניות שהוקלטו כבר נשמרות בקובץ res2.
יש למקם את הקובץ מתיקיה שאליה אתם רוצים שירדו כל פרקי התכנית הנבחרת, לתת לו הרשאות ריצה ולהריץ אותו. ניתן גם להפסיק את הפעולה שלו באמצע ולאחר מכן להמשיך מהמקום שהוא הופסק.
כרגיל, בשביל מחמאות, טענות, דיווחי באגים ושוקולדים יש את התגובות כאן למטה.
ישנה קהילה מאוד פעילה שמקליטה חלק מהתוכניות שלא ניתן לשמוע דרך האתר של גל"צ ושם ניתן גם להוריד את הקבצים למחשב
http://i.start.co.il/groups/glz/forum/t/1878.aspx
@אבי אברהם: תודה רבה על הקישור, לא הכרתי את האתר. אני מוסיף את התכניות שם להורדות שלי.
נראה מצוין, תודה רבה. למרבה הצער, עבור התכנית שאני הכי מעוניין בה, "שעה היסטורית", זה לא עובד (במובן "להוריד את כל הפרקים"), כי הם מקדישים עמוד נפרד לכל פרק. יותר מאוחר אני אמצא איך לסדר את זה (אני חושב שכל מה שצריך זה כמה אופציות של wget, שיגידו לו "תוריד רקורסיבית, רמה אחת, עמודים עם שם מצורה כך-וכך, והכל לתוך קובץ אחד ארוך").
@שי: שעה היסטורית לא זמין להאזנה באתר גל"צ. הם מוכרים את התכנית על קלטות.
אפשר להוריד את התכנית מהקישור שאבי הביא בתגובה למעלה.
@חתול: בעמוד שקישרת אליו, יש קישור ל"עוד בשעה היסטורית", שמוביל לעמוד
http://glz.co.il/newsArticle.aspx?newsid=55068
שמלא קישורים לעמודים שמכל אחד מהם אפשר להוריד פרק. מבחינת הפורום, התכנית היא "תכנית עבר\בחופשה", ויש שם רק מספר פרקים מהעבר.
@שי: וואוו, איך אמורים למצוא את הקישור הזה?
כתבתי סקריפט שיעבוד על שעה היסטורית ותכניות דומות שלא מקשרות ישירות לקבצים (למשל "חיים של אחרים"). אני אפרסם אותו בהקדם.
טוב, כמו שחשבתי: אם נחליף בסקריפט המקורי את הפקודה
wget $url -O html
בפקודות
wget $url -O newsArticle.aspx -r --level=1 -A'newsArticle.aspx'
mv newsArticle.aspx html
זה אמור להספיק.
(החלפת השם בפקודה wget מ־html ל־newsArticle.aspx נובעת מזה ש־wget מחייבת גם את הקבצים שנשמרו לעמוד במגבלות שנקבעו ע"י A-).
מצד שני, בתכנית הספציפית הזאת זמינים רק הפרקים שמאז נובמבר. הפרקים הישנים יותר, אכן, זמינים כנראה רק דרך הפורום או הקלטות.
אה, וצריך להחליף את השורה
$x >> res2
במשהו יותר נכון
echo "$x" >> res2
@שי: הצלחתי לכתוב סקריפט שיעשה את זה אבל הפתרון שלך הרבה יותר פשוט. רק שים לב שכתיב לא אחיד בגל"צ, לפעמים הוא newsArticle ולפעמים NewsArticle.
השאלה עכשיו היא כיצד ניתן לשלב את זה לתוך הסקריפט המקורי.
ותודה על התיקון. לצערי הידע שלי בbash הוא לא גדול. מה ההבדל?
איזה יופי! אני הולך להשתמש בסקריפט הזה די הרבה. וגם התוכניות שאנשים קישרו אליהן נשמעות מאוד מעניינות.
חבל רק שצריך את כל הסקריפטים האלה ושגלי צה"ל לא מאפשרים הורדה ישירה של התוכניות.
באמת לא שמתי לב לחוסר האחידות הזה; אפשר לטפל בו בעזרת עוד דגלים. גם צריך דגלים נוספים בגלל שבחלק מהקישורים לעמודים הם הולכים ל־glz.co.il ובחלק ל־www.glz.co.il. הפקודה המלאה אצלי עכשיו היא
wget $url -O newsArticle.aspx -r --level=1 -A'newsArticle.aspx' -H -Dglz.co.il --ignore-case
הדגלים החדשים, מלבד ignore-case (שלא בדקתי) הם:
H: מרשה ללכת לשרתים אחרים…
Dglz.co.il: …אבל רק תחת שם המתחם של גל"צ
כמו שאמרתי, מה שצריך הוא פשוט להחליף את פקודת ה־wget בסקריפט המקורי בפקודת ה־wget שלי, ואז לשנות את שם הקובץ ל־"html" (זו פקודת ה־mv).
לגבי התיקון: השורה המקורית מנסה לבצע את כתובת הקובץ כאילו היא פקודה, ולשלוח את הפלט לקובץ res2. אצלי, לפחות, זה תמיד נכשל והקובץ res2 נשאר ריק. הפקודה שכתבתי במקומה מדפיסה את כתובת קובץ הצליל לתוך res2.
וואי איזה יופי לא ידעתי שאפשר לעשות דברים כאלה יש באמת אחלה דברים בגלצ ואני לא מוצאת את עצמי יושבת ושומעת אז אם תיהיה איזה הופעה טובה שוב או משהו אני עכשיו יודעת מה לעשות!
תודה רבה 🙂
ענת
@ענת: שימי לב שכתבתי על הורדת התוכניות למשתמשי מערכת ההפעלה לינוקס.
הדרך הזאת לא תעבוד למשתמשי חלונות אבל את יכולה לנסות את Orbit שמיועדת להם.
הדרך להוריד תוכניות מאתר גל"צ באמצעות פלאשגט:
הקלק על הלינק להאזנה באמצעות מקש העכבר הימני ובחר ב"העתק קיצור דרך" (לחילופין, הקלק במרכז חלון ההאזנה ובחר ב"מאפיינים" והלינק יופיע שם), הדבק את הלינק בתוכנת ההורדה FlashGet אבל! בטרם תאשר את תחילת ההורדה – שנה את תחילת הלינק כך שבמקום http יהיה mms
גלטזזז: תודה על העזרה, אבל אני משתמש בלינוקס ואין לי FlashGet וחיפשתי דרך להוריד קבצים רבים ביחד.
למשתמשי חלונות אני ממליץ על Orbit שיכול להוריד קבצים רבים ביחד וגם אין בו צורך להחליף את תחילת הקישור ל־mms.