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了。

comments powered by Disqus