Re: [心得] 關於抓取無名圖片的問題!
※ 引述《tsangbor》之銘言:
: 相繼有一些網友來信詢問更進一步有關CURL的用法
: 當然大家多半都是想比較快取得無名裡面的圖案
: 所以這邊也小小提供一個方式給大家在寫的時候參考
: DEMO: http://download.easygame.com.tw/get_wretch_img.php
: 輸入框請輸入 無名網友的相本
: 如:http://www.wretch.cc/album/album.php?id=qsplmiki&book=130
: 原始碼:http://snippets.dzone.com/posts/show/5963
: 原始碼注意事項
: 由於是網友的詢問,所以在判斷img的RE沒有特別寫的精準
: 原則上是提供網友CURL的用法
: 推 MyNameIs5566:沒有原始碼? 08/20 2
: ※ 編輯: tsangbor 來自: 220.135.101.241 (08/22 00:10)
利用 unix wget 指令也ok ~
<?
$wget = exec(escapeshellcmd("which wget"));
$referer = "http://www.wretch.cc/";
function rmkdir($path, $mode = 0755) {
$path = rtrim(preg_replace(array("/\\\\/", "/\/{2,}/"), "/", $path), "/");
$e = explode("/", ltrim($path, "/"));
if(substr($path, 0, 1) == "/") {
$e[0] = "/".$e[0];
}
$c = count($e);
$cp = $e[0];
for($i = 1; $i < $c; $i++) {
if(!is_dir($cp) && !@mkdir($cp, $mode)) {
return false;
}
$cp .= "/".$e[$i];
}
return @mkdir($path, $mode);
}
function get_wretch_picture($dir, $url)
{
global $wget, $referer;
if(!file_exists($dir))
{
rmkdir($dir);
}
$file = basename($url);
if(!file_exists($dir . '/' . $file))
{
$cmd = $wget . " --referer=" . $referer . " -O " . $dir . '/' . $file . " " . $url;
shell_exec($cmd);
}
echo "<img src='".$dir . '/' . $file."'>";
}
get_wretch_picture("./wretch/2008.07.23", "http://f6.wretch.yimg.com/appleboy/1/1139150376.jpg");
?>
提供這個方法給大家看看
有的程式碼太長,有斷掉,請注意複製
網頁版: http://blog.wu-boy.com/2008/08/23/327/
--
Appleboy Blog: http://blog.Wu-Boy.com
Appleboy Life: http://life.wu-boy.com
迷你寫真部落格:http://mini101.twgg.org
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 119.14.114.178
※ 編輯: appleboy46 來自: 119.14.114.178 (08/23 12:45)
推
08/23 13:58, , 1F
08/23 13:58, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章