顺利进入了新公司实习,被安排了一个网页爬虫的任务,从迷茫到成熟,让我收获了很多。因为工作太忙,导致博客延缓了更新,现在就跟大家分享一下最近的收获。

准备工作

1.PHP爬虫采用的是curl拓展,所以首先要确保你的PHP已经安装了curl拓展。查看是否已开启拓展可以

查看phpinfo页面找到curl拓展,查看是否开启。

如果没有开启,使用sudo apt-get install php5-curl 命令进行安装

工作原理

爬虫是指将目标网页保存到指定位置或变量中,使用正则表达式对其进行解析,以得到我们想要的数据。

将解析后的数据存入变量中并输出,完成爬虫。

函数说明

public function crawler_run()                       //爬取网页信息 参数为:返回网页内容存入变量

public function analysis($result)                 //分析爬取数据 参数为:网页内容

if (preg_match(“/正则表达式/”, $str, $matches))   PHP正则表达式使用函数  $str=’匹配字符’,$matches=’结果数组’。

 

public function crawler_run()    {

$url =”www.baidu.com”;//这里的URL可以随意换成你想要爬取的网站地址
$ch = curl_init($url);//curl初始化
curl_setopt($ch, CURLOPT_USERAGENT, “Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 6.0)”);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($conn[$i],CURLOPT_COOKIE,$cookies);//如果需要登录则加入cookie
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);//设置连接的等待时间
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//禁止调用时就输出获取到的数据
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//// 跳过证书检查 (用来连接https类型的网页)
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);//从证书中检查SSL加密算法是否存在(来连接https类型的网页)
$result = curl_exec($ch);//返回的结果就是爬取的网页,你可以把它保存到本地或者直接打印输出,或者用于后续的分析。

分类: PHP文章

0 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注