Curl模仿http浏览器常见命令
当到处都是作弊,作弊,作弊.在curl都只被当作强力投票工具的今天.你就应该了解为什么4,6级考试为什么每年都会出现泄题了.
以下讨论的是投票作弊中curl的常用参数(身不由己).其他参数请访问curl的站点. Online: http://curl.haxx.se/docs/httpscripting.shtml Date: December 9, 2004
1.获得一个页面
curl http://blog.it580.com #就可以获得http://blog.it580.com的首页。
curl -I http://blog.it580.com #就只获得首页的头信息(HEAD)。
2.表单处理
2.1 GET 例子:
curl "http://bbs.it580.com/junk.cgi?birthyear=1905&press=OK"
#GET方式,我们提交页面的时候,其实看到的也是这样的一个链接。
2.2 POST 例子:
curl -d "birthyear=1905&press=%20OK%20" www.hotmail.com/when/junk.cgi
使用参数 -d,“”内的内容,就是表单的输入部分的名称=你想要输入的值(隐藏的参数也是一样),最后记得加上提交按钮的名称=按钮上的名称。
需要注意的是,POST提交文件的时候,方法是不同的. 例如:
curl -F upload=@localfilename -F press=OK [URL]
这里使用的是参数 -F ,而不是 -d.需要特别注意.
3.认证
比如某些网站需要使用认证.可以使用如下命令.比如论坛什么的.
curl -u name:password www.secrets.com
4.模拟指定浏览器
有些变态的站点,限制了使用浏览器的类型.一样难不倒curl.
curl -A "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" [URL]
这个就是一个模拟,win2k的ie5.0的一个访问.
5.Cookies
大部分网站都使用cookies,来记录浏览中的信息,识别用户等.自然使用curl也是可以做到的. 比如保存cookies.
curl -D head\cookies http://bbs.it580.com
这样将保存bbs.it580.com的cookies到运行命令的目录下,并命名为head\cookies. 保存了自然要下次使用的.如何使用呢?
curl -b head_cookies http://bbs.it580.com
6.使用代理
很多站点限制了访问的ip,或者说投票的时候发现只能一票一投。就要使用到这个了。
curl -x proxy.test.org:80 http://bbs.it580.com
这样就使用proxy.text.org代理,来访问http://bbs.it580.com了。