前言
最近在看别人在群里发表情包,心理好不爽啊~~
我的表情包丢在了上家公司的电脑里….
哎~~ 自己动手,丰衣足食,看来只能这样了~
看到之前收藏的知乎的页面,里面有一些表情,先拿下来救急吧~`
第一步, 首先把网页使用 file_get_contents 载入进来,
第二步, 使用正则把图片的地址筛选出来
第三步, 使用 file_put_contents 把图片下载到本地
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
public $num; public function index(){ set_time_limit(0); $url = isset($_GET['url'])?$_GET['url']:'http://www.baidu.com'; $html = file_get_contents($url); $content = str_replace('\"', '', $html); preg_match_all('/((http|https):\/\/)+(\w+\.)+(\w+)[\w\/\.\-]*(jpg|gif|png)/', $content, $picarr); $liglist = array_unique($picarr[0]); $this->curl($liglist); } public function curl($list){ if(is_array($list)){ foreach ($list as $k=>$v){ $this->dowmload($v); } } } public function dowmload($img){ $this->num++; $img = file_get_contents($img); $ext = pathinfo($img,PATHINFO_EXTENSION); $ext = empty($ext)?'jpg':$ext; $path = './img1/'.$this->num.'.'.$ext; if(!file_exists('./img/')){ echo '请现在根目录创建img目录后继续...'; exit(); } $result = file_put_contents($path,$img); if($result){ $re = 'Success';}else{ $re = 'Error';} file_put_contents("log.txt", '第'.$this->num .'张图片下载'.$re.PHP_EOL, FILE_APPEND); } |
现在,图片已经躺在我的本地的img目录了…
随便感受一下~~