PHP下载google相册到本地-PHP例子
发布时间:2022-07-25 12:58 所属栏目:121 来源:互联网
导读:PHP下载google相册到本地,调用方式xxx.php?user=xxx保证程序放的当前目录可写文件夹可写文件默认存放方式为./用户名/相册1描述/图片描述-1.图片后缀lt;?phpfunctionopen$host,$file{$return=;$header=;... 调用方式 xxx.php?user=xxx 保证程序放的当前目录可
PHP下载google相册到本地,调用方式xxx.php?user=xxx保证程序放的当前目录可写文件夹可写文件默认存放方式为./用户名/相册1描述/图片描述-1.图片后缀lt;?phpfunctionopen$host,$file{$return=;$header='';... 调用方式 xxx.php?user=xxx 保证程序放的当前目录可写文件夹 可写文件 默认存放方式为 ./用户名/相册1描述/图片描述-1.图片后缀<?php function open($host,$file){ $return = ""; $header = ''; while($header!='200'){ $fp = fsockopen($host, 80, $errno, $errstr, 30); if (!$fp) { echo "$errstr ($errno)<br />/n"; } else { $out = "GET $file HTTP/1.1/r/n"; $out .= "Host: $host/r/n"; $out .= "P3P: CP=/"CAO PSA OUR/"/r/n"; $out .= "User-Agent: Baiduspider+(+[url]http://www.baidu.com/search/spider.htm[/url])/r/n"; $out .= "Connection: Close/r/n/r/n"; fwrite($fp, $out); while (!feof($fp)) { $return .= fgets($fp,1024); } fclose($fp); } PReg_match("/HTTP//1.1 (.*?) OK/",$return,$output); $header = $output[1]; } preg_match("//r/n/r/n(.+)/is", $return, $out); $return = $out[1]; return mb_convert_encoding($return, "GB2312", "UTF-8");; } function openimg($host,$file){ $return = ""; $header = '302'; while($header=='302'){ $fp = fsockopen($host, 80, $errno, $errstr, 30); if (!$fp) { echo "$errstr ($errno)<br />/n"; } else { $out = "GET $file HTTP/1.1/r/n"; $out .= "Host: $host/r/n"; $out .= "User-Agent: Baiduspider+(+[url]http://www.baidu.com/search/spider.htm[/url])/r/n"; $out .= "Connection: Close/r/n/r/n"; fwrite($fp, $out); while (!feof($fp)) { $return .= fgets($fp,1024); } fclose($fp); } preg_match("/HTTP//1.0 (.*?) /",$return,$output); $header = $output[1]; } preg_match("//r/n/r/n(.+)/is", $return, $out); $return = $out[1]; if($header=='404') $return=''; return $return; } function img($host,$file,$dir,$name){ $data = openimg($host,$file); // echo $dir; $blankimg = '../images/blank.jpg'; $filename = $dir.'/'.$name; // echo $filename; if(!is_dir($dir)){ if(!mkdir($dir)) die('create dir error'); } // echo $data; if (!$handle = fopen($filename, 'w+')) { echo "can't open $filename"; exit; } if (fwrite($handle, $data) === FALSE) { echo "can't write $filename"; exit; } // echo "write to $filename done"; fclose($handle); echo $filename."<br />/r/n"; } $aid = ($_GET['aid']!='')?$_GET['aid']:0; $user = $_GET['user']; if(!is_dir($user)){ if(!mkdir($user)) die('create dir error'); } if($user=='') die("user string can't be blank"); $userstr = '/'.$user.'/'; $html = str_replace("'",'',open('picasaweb.google.com',$userstr)); preg_match_all("/,access:public/n,title:(.*?)/n,url:(.*?)/n,src/s",$html,$album); $all = count($album[1]); if($aid>$all) die('OK'); $aurl = str_replace('/x2F','/',$album[2][$aid]); $astr = './'.$user.'/'.$album[1][$aid]; $afile = str_replace('http://picasaweb.google.com','',$aurl); $html = str_replace('$','',open('picasaweb.google.com',$afile)); preg_match_all("//"summarytype/":/"text/",/"summary/":/"(.*?)/",/"contenttype/":/"(.*?)/",/"contentsrc/":/"(.*?)/",/"link/":/s",$html,$pics); $allpic = count($pics[3]); for($i=0;$i<$allpic;$i++){ $pic = $pics[3][$i]; $typetemp = explode('.',$pic); $type = $typetemp[(count($typetemp)-1)]; $pname = $pics[1][$i].'-'.$i.'.'.$type; $temp = explode('ggpht.com',$pic); $imGhost = str_replace('http://','',$temp[0].'ggpht.com'); $imgfile = $temp[1]; img($imghost,$imgfile,$astr,$pname); } $aid++; echo '<meta http-equiv="refresh" content="2;url=?aid='.$aid.'&user='.$user.'">'; ?> <title>下载google相册</title> <form> <input name=user type=text> <input type=submit> </form>。 (编辑:ASP站长网) |
相关内容
网友评论
推荐文章
热点阅读