2010-06-21 118 views
1

我正在編寫一個shell腳本來下載和顯示網站中的內容,並將此內容保存到本地文件系統。如何在wget中將相對URL更改爲絕對URL

我已經在腳本中使用以下命令來獲取內容:

/usr/sfw/bin/wget -q -p -nH -np --referer=$INFO_REF --timeout=300 -P $TMPDIR $INFO_URL 

其中INFO_REF是我需要顯示從INFO_URL內容的頁面。

問題是,我能夠獲取內容(圖像/ CSS)作爲一個HTML頁面,但在這個HTML的圖像和標題,這是指向不同的網站鏈接不工作,路徑URL(圖片鏈接)正在變爲我的本地文件系統路徑。

我試着在wget中添加-k選項,並且使用這個選項,這些URL指向正確的位置,但是現在由於圖像路徑從相對位置改變到絕對位置,所以圖像不會出現。沒有-k圖像正常。

請告訴我可以使用什麼選項,以便圖像和頁面中的鏈接都能正常使用。我需要使用兩個獨立的wget命令,一個用於圖像,另一個用於頁面中的鏈接?

回答

2

按wget的手冊:

其實,下載一個單頁 及其所有先決條件(即使他們 在不同的網站存在),並 確保該地段正常顯示 本地,筆者喜歡用 幾個選項除了-p:

wget的-E -H -k -K -p http://site/document

爲了將其調整到您的需要:

/usr/sfw/bin/wget -q -E -H -k -K -p -nH --referer=$INFO_REF --timeout=300 -P $TMPDIR $INFO_URL 

我刪除了-np,因爲我認爲這是錯誤的(也許一個頁面依賴性在父目錄)。

相關問題