文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>curl 介绍

curl 介绍

时间:2009-02-26  来源:7717060

功能强大的curl


1) 通过curl直接访问sina网站
curl http://www.sina.com.cn

2) 你也可以把sina保存期来
curl http://www.sina.com > sina  或 curl -o sina http://www.sina.com.cn

3) 同时可以通过代理来访问网页
curl -x 10.54.38.18:8080 -o sina.html http://www.sina.com.cn

4) 可以把cookies存放到一个文件里
curl -x 10.54.38.18:8080 -o sina.html -D cookie002.txt  http://www.sina.com.cn

5) 下一次访问的时候,如何继续使用上次留下的cookie信息呢?要知道,很多网站都是靠监视你的cookie信息,
来判断你是不是不按规矩访问他们的网站的。
这次我们使用这个option来把上次的cookie信息追加到http request里面去: -b
curl -x 10.54.38.18:8080 -o page1.html -D cookie0002.txt -b cookie0001.txt http://www.sina.com.cn

6)有些讨厌的网站总要我们使用某些特定的浏览器去访问他们,有时候更过分的是,还要使用某些特定的版本~~~~
哪里有时间为了它去找这些怪异的浏览器呢!?

好在curl给我们提供了一个有用的option,可以让我们随意指定自己这次访问所宣称的自己的浏览器信息: -A
curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -x 10.54.38.18:8080 -o sina.html -D cookie0001.txt http://www.sina.com.cn

7)
另外一个服务器端常用的限制方法,就是检查http访问的referer。比如你先访问首页,再访问里面所指定的下载页,这第二次访问的referer地址就是第一次访问成功后的页面地址。这样,服务器端只要发现对下载页面某次访问的referer地址不 是首页的地址,就可以断定那是个盗连了~~~~~

讨厌讨厌~~~我就是要盗连~~~~~!!
幸好curl给我们提供了设定referer的option: -e
curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -x 10.54.38.18:8080 -e "www.sina.com.cn" -o page.html -D cookie0001.txt http://login.sina.com.cn


8)ftp 下载

curl -u name:passwd ftp://ip:port/path/file
或者大家熟悉的
curl ftp://name:passwd@ip:port/path/file

10)说完下载说上传
上传的option是 -T

比如我们向ftp传一个文件: curl -T localfile -u name:passwd ftp://upload_site:port/path/

当然,向http服务器上传文件也可以
比如 curl -T localfile http://cgi2.tky.3web.ne.jp/~zzh/abc.cgi
注意,这时候,使用的协议是HTTP的PUT method

刚才说到PUT,嘿嘿,自然让老服想起来了其他几种methos还没讲呢!
GET和POST都不能忘哦。

http提交一个表单,比较常用的是POST模式和GET模式

GET模式什么option都不用,只需要把变量写在url里面就可以了
比如:
curl http://www.sina.com/login.cgi?user=nickwolfe&password=12345

而POST模式的option则是 -d

比如,curl -d "user=nickwolfe&password=12345" http://www.sina.com/login.cgi
就相当于向这个站点发出一次登陆申请~~~~~

到底该用GET模式还是POST模式,要看对面服务器的程序设定。

一点需要注意的是,POST模式下的文件上的文件上传,比如
<form method="POST" enctype="multipar/form-data" action="http://cgi2.tky.3web.ne.jp/~zzh/up_file.cgi">
<input type=file name=upload>
<input type=submit name=nick value="go">
</form>
这样一个HTTP表单,我们要用curl进行模拟,就该是这样的语法:
curl -F upload=@localfile -F nick=go http://cgi2.tky.3web.ne.jp/~zzh/up_file.cgi

相关阅读 更多 +
排行榜 更多 +
云海之下手游

云海之下手游

角色扮演 下载
战玲珑2最新版本

战玲珑2最新版本

角色扮演 下载
逃跑吧少年虫虫助手正式版

逃跑吧少年虫虫助手正式版

体育竞技 下载