通过PHP的Curl函数模拟Post获取内容

  1. <?php
  2. // --------------------------------------------------------------------------
  3. // 文件名称 : curl_post.php
  4. // 文件说明 : 通过PHP的curl函数模拟post,支持模拟cookie及useragent
  5. // 源码作者 : 孤魂 (www.kalvin.cn)
  6. // --------------------------------------------------------------------------
  7. //将$url中 http://www.kalvin.cn/index.php 更换成你Post的地址
  8. $url='http://www.kalvin.cn/index.php';
  9. //目标来源页面
  10. $referer='http://www.kalvin.cn/';
  11. //如果目标网站需要登录,可以在这里写入模拟的Cookie值
  12. $cookie='';
  13. //将$post_data中写入你所截取的数据包,可以使用Winsock Expert截取数据包
  14. $post_data='author=孤魂&date=2008.06.04';
  15. //部分网站验证浏览器信息,可以在下面模拟浏览器,可以直接将USERAGENT复制到这里面
  16. $useragent='';
  17. //下面的内容禁止修改
  18. $ch = curl_init();
  19. curl_setopt($ch, CURLOPT_POST, 1);
  20. curl_setopt($ch, CURLOPT_HEADER, 0);
  21. curl_setopt($ch, CURLOPT_URL,$url);
  22. curl_setopt($ch, CURLOPT_REFERER, $referer);
  23. curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
  24. curl_setopt($ch, CURLOPT_COOKIE,$cookie);
  25. curl_setopt($ch, CURLOPT_USERAGENT,$useragent);
  26. $result = curl_exec($ch);
  27. ?>