ホームページ >バックエンド開発 >PHPチュートリアル >mysql 正規表現 PHP は正規表現を使用して画像をローカル実装コードにダウンロードします

mysql 正規表現 PHP は正規表現を使用して画像をローカル実装コードにダウンロードします

WBOY
WBOYオリジナル
2016-07-29 08:46:491263ブラウズ

コードをコピーします コードは次のとおりです:


/*
author: ssh_kobe
date: 20110602
shortage: Web ページ内の画像パスが絶対パスでない場合、それはできませんクロールされる
*/
set_time_limit (0); //取得は時間によって制限されません
$URL='http://pp.baidu.com/';//任意の URL
get_pic($URL); ($pic_url) {
/ /画像バイナリ ストリームを取得します
$data=CurlGet($pic_url);
/*正規表現を使用して画像リンクを取得します*/
$pattern_src = '/<[img|IMG]。 *?src=['|"] (.*?(?:[.gif|.jpg]))['|"].*?[/]?>/';
$num = preg_match_all($pattern_src) , $data, $match_src);
$arr_src=$match_src[1];// 画像配列を取得
get_name($arr_src);
return 0;
/*画像タイプを取得して追加 ファイルと同じディレクトリに保存*/
function get_name($pic_arr)
{
//画像タイプ
$pattern_type = '/(/.(jpg|bmp|jpeg| gif|png))/';
foreach( $pic_arr as $pic_item){//各画像のアドレスを取得するループ
$num = preg_match_all($pattern_type, $pic_item, $match_type); ).$match_type[1][0];/ /マイクロ秒のタイムスタンプの名前を変更します
//画像をストリーム形式で保存します
$write_fd = @fopen($pic_name,"wb");
@fwrite($) write_fd, CurlGet($pic_item));
@fclose( $write_fd);
}
return 0;
function get_unique( ){
list($msec, $sec) =explode (" ",microtime());
return $sec.intval($msec*1000000)
}
//Web コンテンツをキャプチャする
function CurlGet($url); {
$url=str_replace('&',' &',$url);
$curl =curl_init();
curl_setopt($curl, CURLOPT_HEADER, false);
//curl_setopt($curl, CURLOPT_REFERER,$url );
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (互換性; MSIE 6.0; SeaPort/1.2; Windows NT 5.1; SV1; InfoPath.2)"); curl_setopt($curl, CURLOPT_COOKIEJAR, 'cookie.txt'
curl_setopt($curl, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_FOLLOW)場所、0); curl_close($curl);
$values を返す
}
?>

;
上記では、正規表現を使用して画像をローカルにダウンロードするための mysql 正規表現の PHP 実装コードを紹介しています。これには、mysql 正規表現の内容も含まれており、PHP チュートリアルに興味のある友人に役立つことを願っています。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。