采集练习(五) php 获得chrome扩展 微度新标签页 下的云壁纸(主要是美女壁纸)

  认识chrome 扩展还是去年年中,在朋友的帮助下用goagentFQ,那时才知道有chrome 扩展这玩意,当时觉得很新奇。于是自己陆续装了些chrome扩展。

前不久偶然间在google play  安装了 微度新标签页 这个扩展,功能试了下还不错。前几天采集hao123的美女图,于是想采下 微度新标签页 下的云壁纸(里面的壁纸都是整理过的很多都是1080p的,质量也非常不错尤其是美女栏目),花费几个小时终于搞定。

采集分析 :

打开 微度新标签页 的云壁纸  时会ajax 获得一个json  

http://hao.weidunewtab.com/cloudWallpaper/index.json

 下拉加载图片很像瀑布流(我只知道名词,不是很清楚原理) 但一直没有ajax请求, 我一直找呀找一直没找到加载的图片的请求。

无意中点开图片 发现 图片的命名都是以数字命名的而且数字还有顺序(http://hao.weidunewtab.com/cloudWallpaper/Beauty/s_1337.jpg),于是我在去查看  那个json 发现json的 结构是 如下图

对比下图片发现有如下规律  

Beauty 是对应的美女栏目;  

1350-1000 表示图片的命名是从1350到1000;

后缀都是.jpg;  

s_ 前缀表示小图 大图片没有前缀。

 

下面是代码:

 /**
  * Created by JetBrains PhpStorm.
  * User: keygle
  * Date: 13-3-10
  * Time: 下午9:44
  * To change this template use File | Settings | File Templates.
  * 获得微度新标签的 云壁纸   美女不错
  */
 set_time_limit(0);
 $jsonUrl = "http://hao.weidunewtab.com/cloudWallpaper/index.json";
 $dir = str_replace('\\','/',dirname(__FILE__));
 $jsonData = @file_get_contents($jsonUrl);
 $imageList = json_decode($jsonData,1);//获得云壁纸
 //相应栏目 及其 图片id 区间  Beauty => 1350-1000 表示美女栏目图片id 为1350-1000 351张图片  第一张为 http://hao.weidunewtab.com/cloudWallpaper/Beauty/s_1350.jpg
 foreach($imageList as $menu => $list){
     $nums = array();
     $nums = explode('-',$list);
     $imageDir = $dir.'/weidu/'.$menu.'/';
     if(!file_exists($imageDir)){mkdir($imageDir,0777);}
     $imageUrl = "http://hao.weidunewtab.com/cloudWallpaper/";
     for($i=$nums[1];$i<=$nums[0];$i++){
         $image = @file_get_contents($imageUrl.$menu.'/'.$i.'.jpg');
         @file_put_contents($imageDir.$i.'.jpg',$image);
     }
 }

采集试了下还不错。带宽不给力,我就采了几张。

posted @ 2013-03-11 00:03  keygle  阅读(1052)  评论(0编辑  收藏  举报