
Öncelikle PHP Bot yapımı mantığını kavramanız gerekiyor, Mantığı kavradıktan sonra istediğiniz yönde geliştirerek merak duygunuz sizi profesyonel bir bot yapımına kadar götürecektir.
PHP İle uzak sitedeki veriler nasıl çekilir?
Öncelikle 3 adet boş php dosyası oluşturalım dosyaların adları ;
index.php
titlegetir.php
icerikekle.php
Boş php dosyalarımızı isimlendirerek kaydedelim ve index.php dosyamızın içeriğine aşağıdaki kodları girip kaydedelim.
İndex.php dosyasının kodları :
<form method=get action=titlegetir.php>
<p>Sayfa URL :<input type=text name=sayfaurl /></p>
<input type=submit name=gonder value=Getir />
</form>
İndex.php dosyasının açıklaması : Yukarıda bir input oluşturduk ve bir button oluşturduk inputa hedef sitemizin verilerinin çekileceği URLyi gireceğiz (Kategori URLsi)
Gireceğimiz örnek değer : http://www.hurriyet.com.tr/teknoloji/
Buraya kadar her şey tamam ama yukarıdaki index.php şu anda hiçbir işe yaramayacaktır kodları bitirmeden uygulamaya geçmeyelim.
Titlegetir.php dosyasının kodları :
<?php
$gelen = $_GET['sayfaurl'];
$site = file_get_contents($gelen);
$aranan =(@<div class=boxH194″>(.*?)</div>@si);
$sayi = preg_match_all($aranan, $site, $ara);
for($a=0; $a<$sayi; $a++){
$sonuc = $ara[1][$a];
$veri = explode(<a href=http://www.hurriyet.com.tr/,$sonuc);
$veri = explode( title=,$veri[1]);
echo $sonuc <a href=icerikekle.php?veri=$veri[0]>Ekle</a><br>;
}
?>
Titlegetir.php dosyasının açıklaması : Bir önceki yani index.php dosyamızda sitemizin adını titlegetir.php dosyasına gönderdik $gelen değişkenine atadık ve ardından $aranan değişkeninde hedef sitedeki çekmek istediğimiz dataların olduğu kısmın başındaki ve sonundaki h2 taglarını yani bizim sitemizde başlıklarımızı aldık ve elrana bastırdık ayrıca her yazının karşısına bir Ekle buttonu verdik böylelikle hangi yazının yanındaki Ekle tuşuna basarsak o yazının içeriğini ekleyeceğiz.
Şimdiye kadar da her şey yolunda ancak bundan sonrası biraz uğraştıracak gibi yukarıda yaptıklarımızı özetlemek gerekirse hurriyet.com.tr sitesindeki herhangi bir kategorinin urlsini index.php dosyamızdaki input alanımıza girdik ve getir dedik ardından bizi titlegetir.php dosyasına yönlendirdi ve titlegetir.php dosyasında biz hedef sitemizdeki ve hedef kategorimizdeki başlıkları aldık ve her başlığın yanına bir ekle buttonu koyduk bundan sonraki aşamada ise (icerikekle.php) ekle buttonuna bastığımız zaman hangi yazıyı ekleyeceksek o yazının içeriği, resmi, anahtar kelimeleri vs. bize inputların içine bastıracak ve veritabanına ekle dediğimizde sitemize / veritabanımıza botla verilerimizi çekmiş olacağız. Aslında buraya kadar yaptığımız her şey site URLsini gönderip sitedeki verilerin başlığını almak, Bundan sonra yapacağımız şey aldığımız başlığa ait bütün verileri kendi sitemize eklemek.
İcerikekle.php Dosyasının Kodları :
<?php
$vericek = $_GET['veri'];
$site = file_get_contents(http://www.hurriyet.com.tr/$vericek);
$baslik = explode(<meta name=title content=,$site);
$baslik = explode( />,$baslik[1]);
$aciklama = explode(<! C-ON-TEXT_CONTENT_START > ,$site);
$aciklama = explode(<! C-ON-TEXT_CONTENT_END >,$aciklama[1]);
$resim = explode(<link rel=image_src href=,$site);
$resim = explode( />,$resim[1]);
?>
<form action= method=post>
<?php
$aciklamaduzelt=strip_tags($aciklama[0]);
echo Başlık : <input type=text name=ad value=$baslik[0]><br>;
echo Açıklama : <textarea style=width:500px; height:125px name=aciklama>$aciklamaduzelt</textarea><br><br>;
echo Resim URL : <input type=text name=key value=$resim[0] /><br>;
?>
<p align=left><input type=submit name=gonder value=Siteme Ekle /></p>
İcerikekle.php dosyasının açıklaması : İndex.php dosyasından sitenin çekilecek kategorisini inputa girip Titlegetir.php dosyasına gönderdik ardından titlegetir.php dosyasında hedef sitenin kategorisindeki başlıklar listelendi ve her başlığın karşısında ekle buttonu koyduk ardından ekle buttonuna basıldığında İcerikekle.php dosyamıza yönlendirdi ve bu dosyamızda biz hedef sitemizin kaynak kodları sayesinde Konu başlığı, Konu içeriği ve hatta konu resminin urlsini alıp input değerlerine girdik ve Siteme Ekle buttonuna basıldığında kendi sitemize eklenecek hale getirdik bizim burada yaptığımız şey size mantığı ve yürümeniz gereken yolun %80′ini yürüttük size sadece kayıt yapmak kalıyor, Kayıt yapmayı neden göstermediniz diye soracak olursanız size hak veriyorum ancak kullandığınız scripti bilmediğimiz için bunu anlatmamız mümkün değil.
Bir sonraki derslerimizde resmi kendi sunucunuza çekme, WordPress scriptlere PHP Botu yapmak ve hatta çekilen içeriği ÖZGÜNLEŞTİREREK EŞ ANLAMLILARIYLA DEĞİŞTİREREK Kendi sitenize eklemek gibi detaylara girmeyi düşünüyoruz, Yorumlarınız ve ilginiz doğrultusunda diğer konulara değineceğiz.
Botu PHP Olarak indir : indir
Kaynak : PHP Bot yapım mantığı / Veri Çekme