当前位置:首页php爬虫:百级别知乎用户数据爬取与分析 举报文章

php爬虫:百级别知乎用户数据爬取与分析

作者:admin    来源:用户投稿    时间:2015.10.3   

  代码托管地址:https://github.com/hhqcontinue/zhihuSpider

  文/Hector

  这次抓取了110的用户数据,数据分析结果如下:

  

PHP爬虫 数据抓取 数据分析 爬虫抓取数据

  开发前的准备

  安装linux系统(Ubuntu14.04),在VMWare虚拟机下安装一个Ubuntu;

  安装PHP5.6或以上版本;

  安装curl、pcntl扩展。

  使用PHP的curl扩展抓取页面数据

  PHP的curl扩展是PHP支持的允许你与各种服务器使用各种类型的协议进行连接和通信的库。

  本程序是抓取知乎的用户数据,要能访问用户个人页面,需要用户登录后的才能访问。当我们在浏览器的页面中点击一个用户头像链接进入用户个人中心页面的时候,之所以能够看到用户的信息,是因为在点击链接的时候,浏览器帮你将本地的cookie带上一齐提交到新的页面,所以你就能进入到用户的个人中心页面。因此实现访问个人页面之前需要先获得用户的cookie信息,然后在每次curl请求的时候带上cookie信息。在获取cookie信息方面,我是用了自己的cookie,在页面中可以看到自己的cookie信息:

  

PHP爬虫 数据抓取 数据分析 爬虫抓取数据

  一个个地复制,以"__utma=?;__utmb=?;"这样的形式组成一个cookie字符串。接下来就可以使用该cookie字符串来发送请求。

  初始的示例:

    $url = 'http://www.zhihu.com/people/mora-hu/about'; 
    //此处mora-hu代表用户ID    $ch = curl_init($url); 
    //初始化会话    curl_setopt($ch, CURLOPT_HEADER, 0);    
    curl_setopt($ch, CURLOPT_COOKIE, $this->config_arr['user_cookie']);  
    //设置请求COOKIE    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);    
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
     //将curl_exec()获取的信息以文件流的形式返回,而不是直接出。    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);     
     $result = curl_exec($ch);    
    return $result;  //抓取的结果
好文打赏,给Ta鼓励
扫一扫用手机阅读本文
Tags:百万  级别  用户  用户数  户数  数据  分析  
  • 相关搜索
图片推荐
    绝对实战:历时8年打造大流量网站

    绝对实战:历时8年打造大流量网站

    2015年年初,按照公司惯例又到了做全年规划的时候,借此机会整理下之前的运营推广思路,总结优势寻找不足以便更好的提升流量。  先来介绍下网站的概况,  域名:www.***.com ,标题:华企商学院
    三线城市的微营销发展趋势

    三线城市的微营销发展趋势

    这几年互联网发展速度真是快,很多人还没理解电脑和网络是个什么东西,现在智能手机、微信、微营销等概念又铺天盖地的过来了。  如今,微营销在一线城市里面已经如火如荼了,但是在三线城市里面大家还处在观望态度
    百度sitemap1.0一直校验中以及sign失败的解决方法

    百度sitemap1.0一直校验中以及sign失败的解决方法

    百度推出了sitemap1.0结构化插件无疑帮助了广大站长的忙了,可是新东西难免会出现各种各样的bug,就像我一样,就遇到了sign检测失败的情况,去网上搜索了很多网页发现都没有给出正确的解决方法,我
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面