суббота, 9 октября 2010 г.

Радио-Т с доставкой на дом ;)

Есть такой небезызвестный еженедельный ИТ-подкаст как Радио-Т.
Я слушаю его с 40-го выпуска, т.е. почти с самого начала.
К сожалению из-за узкого канал в интернет послушать их вживую мне не удается. Но к счастью есть возможность скачать записи подкаста прямо с их сайта. Изначально я качал эти файлы вручную, когда появлялись свежие. Но я был бы не я, если бы мне это не надоело %). Итак.. я решил автоматизировать данную процедуру.
Попробовав сделать листинг в директории с записями и убедившись, что мне это не разрешено, я решил найти другой путь.... и нашел =). Данные о выложенных записях попадают в rss-поток. Оттуда я их могу вытаскивать и скачивать по указанным ссылкам.

В результате моих стараний родился следующий скрипт:

#!/bin/bash
######################################################
## Скрипт автозакачки свежих подкастов от Радио-Т ##
## Автор: Беляев Ростислав aka elve ##
######################################################
##
## Скрипт следует запускать посредством cron раз в несколько дней

## Конфигурационные переменные

podcast_path="/mnt/music/Подкасты/Радио-Т"

# Получаем список новых подкастов (точнее ссылок на файлы)
tmp=`curl http://feeds.rucast.net/radio-t | grep media\:content | awk '{print $2}'`

# Разбиваем список на отдельные переменные
set -- $tmp

cd $podcast_path
# Пробегаем по списку файлов и сравниваем с имеющимся
for i in $tmp
do
# Вычленяем из строки имя файла
podcast=`echo $i | awk -F '/' '{print $5}' | awk -F '"' '{print $1}' `
# Отыскиваем те файлы которых у нас еще нет
if [ ! -f "$podcast_path/$podcast" ]
then
# Если этого файла у нас еще нет, то скачиваем его
echo "Начинается скачивание файла $podcast"
wget http://radio-t.com/downloads/$podcast
fi

done

Комментариев нет:

Отправить комментарий