PHP的cURL使用的实例

cURL是模拟请求,爬虫几乎用这种方式抓去目前网站内容。

PHP内置了cURL,使用很方便。

1.抓取页面

<?php
$curl=curl_init('https://www.dxxing.com');// 初始化并且设置访问网页的URLcurl_exec($curl);curl_close($curl);
?>

以上将直接打印本网站首页Html。

<?php
$curlobj = curl_init();			// 初始化
curl_setopt($curlobj, CURLOPT_URL, "https://www.dxxing.com"); // 设置访问网页的URL
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, true);	  // 执行之后不直接打印出来
$output=curl_exec($curlobj);	// 执行
curl_close($curlobj);			// 关闭cURL
?>

以上将不直接打印内容,可以用print_r()函数打印。

2.GET请求

<?php
$ch = curl_init("https://www.dxxing.com/index.php?test=1") ;  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ; // 不直接显示内容
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
$output = curl_exec($ch) ;  
?>

3.POST请求

<?php  
$url = 'https://www.dxxing.com/api/' ;  
//发送数据
$fields = array(  
               'username'=>'baoshu' ,  
               'password'=>'123456'
              );  
$ch = curl_init() ; 
curl_setopt($ch, CURLOPT_URL,$url) ;  
curl_setopt($ch, CURLOPT_POST,count($fields)) ; //POST请求
ob_start();  
curl_exec($ch);  
$result = ob_get_contents() ;  
ob_end_clean();  
curl_close($ch) ;  
echo $result;  

另外还有接受COOKIE,自动跳转就不多说了。