curl的一些玩意

飘逸的风13年前 (2012-11-15)程序7317
最近在想是否可以打通各家微博,显然,新浪的没有什么难度,三下五除二就能够用curl撂倒。而腾讯就不太好做,各个登录入口都有图片验证,图片识别可就难度大了,可看某篇文章,看似也就是md5的问题,不需要图片识别。

登录网站的核心是cookie的问题,另外就是对代码的分析。

做个cookie的小实验:

need-cookie.php
<?
if($_GET['login']){
  $value = 'https://www.aslibra.com';
  setcookie("url", $value);
  exit;
}

if($_COOKIE['url']){
  echo "thanks! your value is ".$_COOKIE['url'];
}else{
  echo "Not permit";
}
?>


index.php
<pre>
<?
$url = "https://www.aslibra.com/teach/curl/need-cookie.php";
$ckfile = "cookie.txt";

echo "== step 1 / no cookie ==\n";
$content = file_get_contents($url);
echo $content."\n\n";

echo "== step 2 / login ==\n";
$ch = curl_init( $url."?login=1");
curl_setopt($ch, CURLOPT_COOKIEJAR, $ckfile);
curl_setopt($ch, CURLOPT_HEADER, 1);
$r = curl_exec($ch);
echo $r."\n\n";

echo "== step 3 / get it with cookie ==\n";
$ch = curl_init( $url );
curl_setopt($ch, CURLOPT_COOKIEFILE, $ckfile);
$r = curl_exec($ch);
echo $r."\n\n";

?>


执行结果:

== step 1 / no cookie ==
Not permit

== step 2 / login ==
HTTP/1.1 200 OK
Date: Sat, 04 Sep 2010 08:37:06 GMT
Server: Apache/2.2.12 (Ubuntu)
X-Powered-By: PHP/5.2.10-2ubuntu6.4
Set-Cookie: url=http%3A%2F%2Fwww.aslibra.com
Vary: Accept-Encoding
Content-Length: 0
Content-Type: text/html

1

== step 3 / get it with cookie ==
thanks! your value is https://www.aslibra.com1


注意:第二步是有set-cookie的返回

 

原创内容来自 阿权的书房 

相关文章

分享:PHP获取MAC地址的类库

PHP获取MAC地址的类库代码: <?php /** 获取网卡的MAC地址原码;目前支持WIN/LINUX系统 获取机器网卡的物理(MAC)地址...

PHP Apache2.2 虚拟主机配置

APACHE+PHP+MYSQL 基本环境设好了之后,今天在此基础之上设置 多个虚拟主机,即一个IP,可以有多个域名访问,也可以说一个WEB SERVER 上架设多个网站(在网上找了很久,都没有找...

php伪静态写法以及Apache配置Rewrite

一、Apache配置: 进入/etc/httpd/conf/目录下,打开httpd.conf文件。 启用rewrite # LoadModule rewrite_module modules/m...

php扩展php_curl.dll不加载解决方法

方法一(已通过测试)已经内置有php_curl.dll,在ext目录下,此DLL用于支持SSL和zlib. 在php.ini中找到有extension=php_curl.dll, 去掉前面的注释....

对PHP新手的一些建议和开发习惯

1、准确的理解各种概念。现在的新东西层出不穷,望文生义和一知半解对开发工作有害无益;//比如我就碰到有人理解松散耦合(这个东西不新)的概念居然是要求代码不要有空行,否则你的程序就是“太松散”了...

PHP如何解决在URL地址栏输入中文字符搜索结果出现乱码

这个问题的出现的前提是本站代码采用utf-8格式,当页面停留在搜索页面时,在浏览器的地址栏输入中文的关键字进行搜索时会出现乱码,在网上查找资料说明,是因为浏览器默认将url中的中文字符编码为gb231...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。