2010-11-18 3 views
0

Ok, так что я знаю, я могу использовать:Использование Wget и хрон для загрузки веб-страниц

wget -r <website> > <file> 

, чтобы получить веб-страницы и сохранить его. Мой вопрос: как использовать cron и wget для получения веб-страницы по часовой или даже минутной основе, а затем сохранить их в папку, zip и tarball, а затем продолжить добавлять к ней для обзора на более позднюю дату ,

Я знаю, что могу это сделать вручную, моя цель - загрузить его в основном через 10-20 минут, примерно на 4 часа (не имеет значения, если он идет дольше) и добавьте все в хороший каталог, затем нажмите zip указанную директорию, чтобы сохранить пространство, и проверить их позже в тот же день.

+0

Можете ли вы объяснить немного больше о том, что ваш конечный результат? Во-первых, '-r' означает, что вы хотите сохранить более одной страницы - это то, что вы хотите или нет? Если это так, вы не должны указывать «веб-страницу», но «веб-страницу ** s **», чтобы быть понятной. Я возьму одну страницу. Таким образом, вы загружаете страницу, например, 10 утра, 11 утра и 12 вечера - что бы вы хотели иметь - набор файлов ('wp-10am.htm',' wp-11am.htm', 'wp-12pm.htm') или что-то другое? –

+0

Что-то, я в основном общался с wget в первый раз, кроме захвата некоторых быстрых файлов. –

+0

В основном, что я хочу сделать, это регулярно собирать веб-страницу и сохранять ее как индекс.

ответ

2

Для редактирования CRON таблица

crontab -e 

Вы можете добавить запись как этот

0,20,40 * * * * wget URL ~/files/file-`date > '+%m%d%y%H%M'`.html & 

Чтобы скачать/сохранить файл каждые 20 минут.

Вот это small reference о кронтаб выражений, так что вы можете настроить значения

Чтобы автоматически TAR файлы кронтаб будет немного сложным:

0,20,40 * * * * wget URL > ~/files`date '+%m%d%y'`/file-`date '+%H%M'`.html & 
* 12 * * *  tar cvf ~/archive-`date '+%m%d%y'`.tar ~/files`date '+%m%d%y'` 

Это будет делать это в полдень, если вы хочу сделать это в одночасье, это сложнее, потому что вам нужно TAR в предыдущий день, но я думаю, что с этим вы поймете эту идею.

+1

Не заметил раньше, но на самом деле это 0,20,40 * * * * wget URL> ~/files/file-'date '+% m% d% y% H% M''.html & Пропустил>, задавался вопросом, почему он не работает: P –

1

Или без хрон:

for i in `seq 1 10`; do wget -r http://google.de -P $(date +%k_%M) && sleep 600; done 

10 раз, через каждые 10 минут

EDIT: Используйте почтовый индекс, как этот

zip foo.zip file1 file2 allfile*.html 
Смежные вопросы