lostyazilim
tr.link

php bot resim yoksa indirmesin kodunu nasıl yapabilirim.

7 Mesajlar 1.105 Okunma
acebozum
tr.link

veraya34 veraya34 WM Aracı Kullanıcı
  • Üyelik 04.09.2017
  • Yaş/Cinsiyet 55 / E
  • Meslek öğretmen
  • Konum İzmir
  • Ad Soyad H** Ç**
  • Mesajlar 32
  • Beğeniler 1 / 2
  • Ticaret 1, (%100)


$url="http://www.......com/resimler/manzara_1.jpg";
$savepath = 'resimler/'; $file = explode('/',$url);$count = count($file);$fullfilename = $file[--$count];
$yeni1='manzara-1.jpg';
foreach($url as $i){save_image($i);
}
if(function_exists('curl_init')){$fp = fopen($savepath.$yeni1,'w+');
$ch = curl_init();curl_setopt($ch , CURLOPT_URL, $url);
curl_setopt($ch , CURLOPT_USERAGENT, 'firefox/2.0.11');
curl_setopt($ch , CURLOPT_FILE, $fp);
curl_exec($ch);
curl_close($ch);
fclose($fp);}


Merhaba bu kodla sitede ilgili resim varsa indiriyorum. Eğer ilgili resim yoksa resim boş olarak iniyor. Gereksiz yer kaplıyor tabiki..Birde boş resim silme derdi başlıyor.Bunu önlemek için resim yoksa indirmesin kodunu nasıl ekleyebilirim.
 

 

elektronikssl
webimgo

Metin Metin metinli.com Kullanıcı
  • Üyelik 28.03.2011
  • Yaş/Cinsiyet 30 / E
  • Meslek SEO Analisti ve Siber Güvenlik
  • Konum Ankara
  • Ad Soyad M** Y**
  • Mesajlar 1399
  • Beğeniler 61 / 582
  • Ticaret 18, (%94)
Resmin HTTP durum kodu ile varlığını kontrol edebilirsin. İlk istek dönüşünde HTTP status 200 geliyorsa o bağlantıda geçerli bir sayfa (dosya, resim vb.) olduğunu gösterir.

Bu tek başına yeterli değildir, sayfa hotlink veya oturum ile alakalı olarak 200 döndürebilir. Buna binaen alttaki kurallar işini sağlama alacaktır;

Uzantı kontrolü yapabilirsin. Exif üzerinden teyit ile bu sağlanabilir. Bu manipüle edilebilir olduğundan resmin disk üzerindeki büyüklüğü ve piksel karşılaştırması yapabilirsin. Disk boyutu resimlerin büyüklüğüne göre 1 kb üzerinde olmalıdır gibi bir kural işini çözecektir. Sonrasında da piksel karşılaştırması yaparak 1x1'den büyük resimlerin çekilmesi sağlanabilir.

Sıralamak gerekirse;


  1. HTTP durum kodu 200 dönüyor mu?

  2. Bağlantı uzantısı geçerli bir görsel uzantısı mı? (Exif ile eşleşiyor mu?)

  3. Görselin diskteki boyutu 1 kb üzerinde mi?

  4. Görselin çözünürlüğü 1x1'den büyük mü?



Bunları sağlıyorsa bağlantıdaki içeriği çektiğinde elindeki veri yüksek ihtimalle görsel bir materyal olacaktır. :)
 

 

Yazar, yazılım geliştirici, SEO Analisti ve siber güvenlik uzmanı.

veraya34 veraya34 WM Aracı Kullanıcı
  • Üyelik 04.09.2017
  • Yaş/Cinsiyet 55 / E
  • Meslek öğretmen
  • Konum İzmir
  • Ad Soyad H** Ç**
  • Mesajlar 32
  • Beğeniler 1 / 2
  • Ticaret 1, (%100)
merhaba bu kadar değerli bilgileri benimle paylaştığın için öncelikle çok teşekkür ederim. Ancak o kadar kuvvetli php bilgim yok. Daha önceden bu kodların arasında basit bir kodla olmayan resmi indirmeyen kod vardı. ama bir şekilde yanlışlıkla silince elimde bunlar kaldı..
Yinede bilgilerine teşekkür ederim.
 

 

Metin Metin metinli.com Kullanıcı
  • Üyelik 28.03.2011
  • Yaş/Cinsiyet 30 / E
  • Meslek SEO Analisti ve Siber Güvenlik
  • Konum Ankara
  • Ad Soyad M** Y**
  • Mesajlar 1399
  • Beğeniler 61 / 582
  • Ticaret 18, (%94)
Aşağıda hem PHP kütüphanesinde hem de Stack Overflow'da bulunan tartışma konularını listeledim. Uygulamana kolay bir şekilde entegre edebilirsin.

Birinci madde için kullanabileceğin fonksiyonlar;



İkinci madde için kullanabileceğin fonksiyonlar;



Üçüncü madde için kullanabileceğin fonksiyonlar;



Dördüncü madde için kullanabileceğin fonksiyonlar;

 

 

Yazar, yazılım geliştirici, SEO Analisti ve siber güvenlik uzmanı.
wmaraci
wmaraci

veraya34 veraya34 WM Aracı Kullanıcı
  • Üyelik 04.09.2017
  • Yaş/Cinsiyet 55 / E
  • Meslek öğretmen
  • Konum İzmir
  • Ad Soyad H** Ç**
  • Mesajlar 32
  • Beğeniler 1 / 2
  • Ticaret 1, (%100)
teşekkür ederim önerilerini inceleyeceğim. inşallah katkınla olumlu sonuca ulaşırım. Bir süre uzak kalmıştım olaydan sıfırdan tekrar başlıyorum :)
 

 

veraya34 veraya34 WM Aracı Kullanıcı
  • Üyelik 04.09.2017
  • Yaş/Cinsiyet 55 / E
  • Meslek öğretmen
  • Konum İzmir
  • Ad Soyad H** Ç**
  • Mesajlar 32
  • Beğeniler 1 / 2
  • Ticaret 1, (%100)
özellikle dosya boyutunun işime yarayacağını düşündüm. çünkü olmayan dosya hemen hemen 0 byte olacağından. ama kodlarımın arasına yerleştirmeyi beceremedim.. teşekkür ederim
 

 

veraya34 veraya34 WM Aracı Kullanıcı
  • Üyelik 04.09.2017
  • Yaş/Cinsiyet 55 / E
  • Meslek öğretmen
  • Konum İzmir
  • Ad Soyad H** Ç**
  • Mesajlar 32
  • Beğeniler 1 / 2
  • Ticaret 1, (%100)
burada resim boyutu 1 KB altında olanı indirmesin nasıl yapabiliriz.
 

 

Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al