-
經常使用參數以下:app
-c,–cookie-jar:將cookie寫入到文件
-b,–cookie:從文件中讀取cookie
-C,–continue-at:斷點續傳
-d,–data:http post方式傳送數據
-D,–dump-header:把header信息寫入到文件
-F,–from:模擬http表達提交數據
-s,–slient:減小輸出信息
-o,–output:將信息輸出到文件
-O,–remote-name:按照服務器上的文件名,存在本地
–l,–head:僅返回頭部信息
-u,–user[user:pass]:設置http認證用戶和密碼
-T,–upload-file:上傳文件
-e,–referer:指定引用地址
-x,–proxy:指定代理服務器地址和端口
-w,–write-out:輸出指定格式內容
–retry:重試次數
–connect-timeout:指定嘗試鏈接的最大時間/s
-
使用示例:
例1:抓取頁面到指定文件,若是有亂碼可使用iconv轉碼
# curl -o baidu.html www.baidu.com
# curl –s –o baidu.html www.baidu.com |iconv -f utf-8 #減小輸出信息
例2:模擬瀏覽器頭(user-agent)
# curl -A 「Mozilla/4.0 (compatible;MSIE 6.0; Windows NT 5.0)」 www.baidu.com
例3:處理重定向頁面
# curl –L http://192.168.1.100/301.php #默認curl是不處理重定向
例4:模擬用戶登錄,保存cookie信息到cookies.txt文件,再使用cookie登錄
# curl -c ./cookies.txt -F NAME=user -F PWD=***URL 本文全部的概念均可以從《Linux就該這麼學》中找到詳細的解釋。#NAME和PWD是表單屬性不一樣,每一個網站基本都不一樣
# curl -b ./cookies.txt –o URL
例5:獲取HTTP響應頭headers
# curl -I http://www.baidu.com
# curl -D ./header.txt http://www.baidu.com #將headers保存到文件中
例6:訪問HTTP認證頁面
# curl –u user:pass URL
例7:經過ftp上傳和下載文件
# curl -T filename ftp://user:pass@ip/docs #上傳
# curl -O ftp://user:pass@ip/filename #下載