Wget + Cron. Пример использования
Wget - это свободная неинтерактивная программа для загрузки файлов с Интернет. Поддерживает протоколы HTTP,HTTPS и FTP. Поскольку она неинтерактивная, то многие ее используют в фоновом режиме.
Cron - планировщик, демон в unix-подобных системах, используется для периодического выполнения разных задач.
Есть сайт с большим количеством видео-файлов для скачивания. Но есть и условия скачивания:
1. Качать можно только по одному файлу за раз.
2. Для иностранных пользователей (вне РФ), время скачивания с 4 до 10 часов утра (московское время).
Первую проблему можно решить, используя Tor + Firefox.
Для решения второй, можно воспользоватся русским прокси. По ряду причин я этим пользоваться не хочу. Поэтому я хочу автоматизировать скачивание файлов wget-ом посредством cron.
Создаю у себя в домашней директории файл urls (название можно любое):
$ vi urls
и заношу в него urls файлов, которые я хочу качать (в моем случае, видео файлы)
http://***.net/film/lalala.cd1.avi
http://***.net/film/lalala.cd2.avi
http://***.net/film/lalala.cd3.avi
http://***.net/film/lalala.cd4.avi
(каждый новый url с новой строки).
Теперь создаю файл serhiy (название любое) и записываю в него действия для cron:
$vi serhiy
записываю
5 10 * * * /usr/bin/wget -c --directory-prefix=/home/serhiy --input-file=/home/serhiy/urls
Что значит начинать программу wget в 10 часов 5 минут, каждый день. Опция -с задает продолжение закачки недокачанного файла, --directory-prefix=/home/serhiy - место, куда записываем, --input-file=/home/serhiy/urls - файл с которого брать url's.
Создаем crontab файл.
$crontab serhiy
Все. Можно: проверить - командой crontab -l; редактировать - crontab -e; удалить crontab -r.
Очень полезно. Дал задание, через недельку в папке лежат все серии нужного фильма.