>  기사  >  php教程  >  컬을 사용하여 간단한 Baidu 검색 만들기

컬을 사용하여 간단한 Baidu 검색 만들기

高洛峰
高洛峰원래의
2016-11-03 13:26:541183검색

요 며칠 php로 컬 라이브러리를 공부해서 간단한 바이두 검색을 해봤습니다. 먼저 코드를 입력해 봤습니다.

<div style="width:200px;height:100px;">
    <div>百度搜索</div>
    <form action="" method="get">
        <input type="text" name="key">
        <input type="submit" value="搜索">
    </form>
</div>
<?php
$k = &#39;&#39;;
$k = !empty($_GET[&#39;key&#39;])?$_GET[&#39;key&#39;]:&#39;&#39;;
session_start();
$_SESSION[&#39;key&#39;] = $k;

$curl = curl_init(); 
// 设置你需要抓取的URL 

for($i = 0;$i<2;$i++){
curl_setopt($curl, CURLOPT_URL, "http://www.baidu.com/s?wd={$_SESSION[&#39;key&#39;]}&pn={$i}"); 
// 设置header 
curl_setopt($curl, CURLOPT_HEADER, 1); 
// 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
// 运行cURL,请求网页 
$data = curl_exec($curl); 

$pre = &#39;/<h3 class="t"><a.*?href = "(.*?)".*?target="_blank".*?>(.*?)<\/a><\/h3>/s&#39;;
preg_match_all($pre,$data,$match);

foreach ($match[1] as $k => $v) {
?>    
<div style="font-size:20px;color:red;">
    <a href="<?php echo $v;?>" target="_blank"><?php echo strip_tags($match[2][$k]);?></a>
</div>
<?php
}
}

curl_close($curl);


?>

바이두 검색에서 URL을 분석한 결과, 패턴

https://www.baidu.com/s?wd=키워드 검색

그런데 https 프로토콜을 사용해본 결과 바이두에서 데이터를 얻을 수 없다는 것을 발견해서 http://www.baidu.com?wd=키워드로 검색하시면 됩니다!!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.