簡単なユーザースクリプトを作成しました。Web
を閲覧するときに、1回のクリックで任意の画像を「ブックマーク」できます。
ユーザースクリプト
- imgsrcを取得します
- WebページのURLを取得します
- .jpg.png.gifをサーバーにコピーします
すべてが完全に機能しますが、場合によっては、スクリプトでファイルをコピーできません...
実際には、ファイルは作成されますが、imgデータは含まれず、エラーWebページのコンテンツのみが含まれます。
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /data/x/xxx_xxx_x.jpg on this server.</p>
<p>Additionally, a 403 Forbidden
error was encountered while trying to use an ErrorDocument to handle the request.</p>
<hr>
<address>Apache Server at xxxxxxxx.net Port 80</address>
</body></html>
「コピー」コード(php):
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $urlimg);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
set_time_limit(300); # 5 minutes for PHP
curl_setopt($ch, CURLOPT_TIMEOUT, 300); # and also for CURL
$path = $dirpix.'/'.$aa.'/'.$mm;
if ( ! is_dir($path)) {
mkdir($path);
}
$outfile = fopen($path.'/'.$id.'.'.$ext, 'wb');
curl_setopt($ch, CURLOPT_FILE, $outfile);
curl_exec($ch);
fclose($outfile);
curl_close($ch);
たぶん、ウェブサイトはその種の「コピー」スクリプトをブロックしますか?ありがとう!