什么叫采集?
就是使用PHP程序,把其他网站中的信息抓取到我们自己的数据库中、网站中。
PHP制作采集的技术:
从底层的socket到高层的文件操作函数,一共有3种方法可以实现采集。
1. 使用socket技术采集:(推荐学习:PHP编程从入门到精通)
socket采集是最底层的,它只是建立了一个长连接,然后我们要自己构造http协议字符串去发送请求。
例如要想获取优酷页面的内容,用socket写如下:
打印出的结果如下,包含了返回的头信息及页面的源码:
2. 使用curl_一套函数
curl把HTTP协议都封装成了很多函数,直接传相应参数即可,降低了编写HTTP协议字符串的难度。
前提:在php.ini中要开启curl扩展。
function getHTTPS($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_REFERER, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); $result = curl_exec($ch); curl_close($ch); return $result; } var_dump(getHTTPS($url));
打印出的结果如下,只包含页面的源码:
3. 直接使用file_get_contents(最顶层的)
前提:在php.ini中设置允许打开一个网络的url地址。
//使用file_get_contents() $data=file_get_contents("http://www.youku.com"); var_dump($data);
以上是php使用什么做数据采集的详细内容。更多信息请关注PHP中文网其他相关文章!