1. 程式人生 > >Shell腳本之;Web自動化

Shell腳本之;Web自動化

baidu 輸出重定向 3.1 ons 時間戳 停止 標題 網頁 文本

1.網站下載:

wget是一個用於文件下載的命令行工具,可以下載網頁和遠程文件

例如:wget URL

wget https://zhidao.baidu.com/question/1818975931865141188.html

技術分享圖片

(1)可以指定從多個URL處進行下載:

wget URL1 URL2 URL3...

技術分享圖片

(2)可以使用wget下載FTP服務器中的文件

(3)wget命令參數說明:

-O:指定輸出文件名,如果存在同名文件會先將該同名文件清空再將下載文件寫入

-o:指定一個日誌文件,不必將日誌信息打印到stdout

wget https://zhidao.baidu.com/question/1818975931865141188.html -O myweb.html -o weblog   //運行該命令終端不會輸出任何東西

(3)由於不穩定的Internet連接,下載可能會被迫中斷,可以將重試次數做為命令參數,這樣一旦中斷下載,wget可以在放棄下載之前進行多次嘗試

wget -t 5 URL

(4)下載限速:限定下載任務能夠占用的最大帶寬

wget --limit-rate 20k http://example.com/file.iso

技術分享圖片

(5)指定最大下載配額:配額一旦用完,下載隨之停止;避免無意中占用過多的磁盤空間(這裏指定下載100M)

wget -Q  100m http://example.com/file1  http://example.com/file2

(6)斷點續傳:wget進行的下載在未完成之前被中斷,可以利用選項-c從斷點開始繼續下載

wget -c URL

(7)用cURL下載:curl並不將下載數據寫入文件,而是寫入標準輸出,所以我們必須用重定向操作符把輸出重定向到指定文件中

curl https://zhidao.baidu.com/question/1818975931865141188.html > testweb.html

技術分享圖片

(8)復制或者鏡像整個網站:wget有一個選項可以像爬蟲一樣以遞歸的方式收集網頁上的所有URL鏈接,並逐個下載

wget --mirror http://192.168.23.135/

技術分享圖片

或者使用如下方法鏡像整個網站:

 wget -r -N -l 10 http://192.168.23.135/

-r:遞歸遍歷網頁

-N:允許對文件使用時間戳

-l:指定頁面層級,wget只會向下遍歷指定的頁面級數

(9)訪問需要認證的HTTP或FTP頁面:

--user 和 --password 提供認證信息

 wget --user username --password pass ftp://192.168.23.21/

技術分享圖片

(10)以格式化純文本形式下載網頁:用 lynx 命令的 -dump 選項將網頁以ASCII字符的形式下載到文本文件中

lynx -dump http://www.runoob.com/linux/linux-shell-io-redirections.html > webpages_as_text.txt

這個命令會將所有的超鏈接(<a href="link">)作為文本輸出到頁腳列在References標題下

技術分享圖片

Shell腳本之;Web自動化