Linux · 2008-10-21

功能强大的CURL

linux下的curl,有着非同一般的魔力,有人称它为下载工具,我更倾向于叫它“文件传输工具”因为它好像无所不能。从常见的 FTP, HTTP, TELNET, 等协议,还支持代理服务器,cookies,下载以及上传文件,

curl 打印页面

curl www.baidu.com

curl 抓取一个页面,然后进行保存 -o (小写的英文字母 o )

curl -x ip:port  指定代理

curl -x 代理ip:端口  ,使用代理访问。

curl -D cookies 保存cookie在本地。

curl www.baidu.com -o baidu.html -D baidu.txt

curl www.baidu.com -o baidu.html -D baidu.txt  使用curl 打印出本站的主页,使用 -o 选项来保存在本地, -D保存cookies

目录下将会多出两个文件, baidu.html (网页文件)跟 baidu.txt  (cookie文件)

curl -A 模拟浏览器发送报文

curl -A “Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)”

curl -e 很重要的一个选项,模拟来路,比如这样

curl -e www.163.com www.baidu.com 这样是显示本站的某个点过去的~

都知道skycn都使用了referer技术,就是判断点击的来路,不是一级一级点过来,中间突然点击下载地址,就认为你是盗链。

请直接点击 http://dqcnc.skycn.com/down/Ravolxz_2008_206620.zip  会直接跳回主页的

这样再试试

curl -A “Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)” -D skycn.txt -e http://tele.skycn.com/soft/38422.html -o test.rar http://dqcnc.skycn.com/down/Ravolxz_2008_206620.zip 

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
 31 67.7M   31 21.0M    0     0   513k      0  0:02:15  0:00:41  0:01:34  619k

这样就告诉天空软件站,这是一个运行在windows2000的IE5.0发过来的一个请求,并且来路是 http://tele.skycn.com/soft/38422.html 这个页面。

-o 就是指定保存文件的名称。

-O (大写的英文字母 O)这个是自动按服务器上的名字来保存文件到本地。

curl -A “Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)” -D skycn.txt -e http://tele.skycn.com/soft/38422.html -O http://dqcnc.skycn.com/down/Ravolxz_2008_206620.zip

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  4 67.7M    4 3285k    0     0   229k      0  0:05:02  0:00:14  0:04:48  658k

Ravolxz_2008_206620.zip 自己生成的这个名字。

curl -b 是追加旧的cookie,生成新的cookie