Merhaba arkadaşlar,
Facebook’da bir web sayfası paylaştığınızda facebook size sitede bulunan resimleri sunuyordu. Sizde bu resimlerden seçip paylaşıyordunuz. Peki Facebook bir web sayfasındaki bütün resimleri çekebiliyorda siz neden çekemeyesiniz.
İşte bugün size bir web sayfasındaki bütün resimleri cURL ile bağlanıp regexp yardımıyla nasıl ayaklayacağımızı anlatıyorum. Hatta anlatmıyorum direkt olarak kodu paylaşıyorum:
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 32 33 34 35 36 |
<?php $curl = curl_init("https://www.trkodlama.com"); $agent = "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7"; $curl = curl_init($url); curl_setopt($curl, CURLOPT_USERAGENT, $agent); // Mozilla gibi göründük curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // Burayı 0 yaparsanız sitenin çıktısını da ekrana basar. Bunu istemeyiz.. $data = curl_exec($curl); curl_close($curl); $images = array(); preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $data, $media); unset($data); $data=preg_replace('/(img|src)("|\'|="|=\')(.*)/i',"$3",$media[0]); foreach($data as $url) { $info = pathinfo($url); if (isset($info['extension'])) { if (($info['extension'] == 'jpg') || ($info['extension'] == 'jpeg') || ($info['extension'] == 'gif') || ($info['extension'] == 'png')) array_push($images, $url); } } // www.trkodlama.com adresindeki bütün resimleri $images dizisine aktardık. Bunun içeriğine de // şöyle bakalım echo "<pre>"; print_r($images); echo "</pre>"; ?> |
Kolay gelsin arkadaşlar,
Yorumlar