Home > php教程 > PHP开发 > Use curl to create a simple Baidu search

Use curl to create a simple Baidu search

高洛峰
Release: 2016-11-03 13:26:54
Original
1285 people have browsed it

In the past few days, I have studied the curl library in php and made a simple Baidu search. First, enter the code

<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);


?>
Copy after login

After analyzing the URLs in Baidu searches, I found a pattern

https://www.baidu. com/s?wd=Search keyword

But I found that after using the https protocol, I could not obtain the data on Baidu, so I changed it to http://www.baidu.com?wd=Search keyword!!


Related labels:
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
curl simulated login
From 1970-01-01 08:00:00
0
0
0
Convert cURL command line to PHP cURL code
From 1970-01-01 08:00:00
0
0
0
Convert command line cURL to PHP cURL
From 1970-01-01 08:00:00
0
0
0
How to set boolean value true in php curl
From 1970-01-01 08:00:00
0
0
0
Please tell me, php curl request page shows blank
From 1970-01-01 08:00:00
0
0
0
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template