2010-11-18 136 views
0

好了,我知道我可以使用:使用wget和cron下載網頁

wget -r <website> > <file> 

得到一個網頁並保存。我的問題是,我將如何使用cron和wget以小時或甚至分鐘爲基礎獲取網頁,然後將它們保存到文件夾,壓縮並壓縮它,然後繼續添加以供日後審閱。

我知道我可以手動做到這一點,我的目標是基本上下載它10至20分鐘,大約4小時(不管它是否更長),並將全部附加到一個不錯的目錄,然後zip所述目錄節省空間,並在當天晚些時候檢查它們。

+0

你能解釋更多的關於什麼是你的最終結果?首先,'-r'意味着你想要保存多一頁 - 這是你想要或不想要的?如果是這樣,你不應該說「網頁」,而是「網頁**」,只是要清楚。我會假設一頁。所以你在上午10點,上午11點和下午12點下載一個頁面 - 你想要什麼 - 一組文件('wp-10am.htm','wp-11am.htm','wp-12pm.htm' ) 或者是其他東西? – 2010-11-18 01:38:26

+0

有些東西,我第一次大部分時間都是和wget混戰,除了抓取一些快速文件。 – 2010-11-18 01:45:28

+0

大多數我想要做的是定期抓取網頁,並將其保存爲索引。

回答

2

編輯cron表

crontab -e 

您可以添加這樣

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

條目下載/文件保存每隔20分鐘。

這是一個small reference關於crontab的表情,所以你可以調整值

要自動壓縮文件的文件crontab中,會有些複雜:

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'` 

,這將做到這一點,在中午如果你想在mifnight上做它更加複雜,因爲你需要在前一天TAR,但是我認爲你會明白這一點。

+1

以前沒有注意到,但它實際上是 0,20,40 * * * * wget URL>〜/ files/file -'date'+%m%d%y%H%M''.html& 錯過了>,想知道爲什麼它不工作:P – 2010-11-18 02:32:38

1

或者沒有的cron:

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

10次,每次10分鐘

編輯:使用拉鍊這樣

zip foo.zip file1 file2 allfile*.html