Booking.Com Bot Yazma
-
Müridler forumda bot yazma ilgili konular açılıyordu.Bakıyordum ama hiç birşey anlamıyordum.Şimdiye kadar hiç kullanmadım ama bugün kullananmam gerekti ve nette araştırdım işte siteyi çekme site başlığı çekme gibi konulara baktım.Sonra bölgesel yani istediğim alanı çekmek için uğraştım ama bu biraz daha ileri seviye sanıyorum işin içinden çıkamadım.
çekmek istediğim site : Adres
Çekmek istediğim alan fiyat alanı
yaptığım çok basit ama başlangıç için iyidir sanki tabi for döngüsü fi,lan kurmak lazım ama ne bileyim daha bir tanesini çekemdim :)
<?
function ara($bas, $son, $yazi)
{
@preg_match_all('/' . preg_quote($bas, '/') .
'(.*?)'. preg_quote($son, '/').'/i', $yazi, $m);
return @$m[1];
}$icerik = file_get_contents($site);
$veri = ara('class="click_change_currency jq_tooltip toggle_price_per_night_or_stay">', '', $icerik);
echo 'Çekilen Veri :' .$veri[0];
?>Yardımlarınızı bekliyorum.
-
$veri = ara('class="click_change_currency jq_tooltip toggle_price_per_night_or_stay">', '', $icerik); Neyle Neyin arası belirlememişsinki.
$veri = ara('class="click_change_currency jq_tooltip toggle_price_per_night_or_stay">', '<', $icerik); yap bari.
Kodlarına bakmadım ama yukarıdaki olur sanırım.
Ayrıca file_get_contents ile bi yere kadar gidersin sitede referer kontrol sistem, tarayıcı kontrol sistemi, sayfalar arası hızlı geçiş koruması, bir ip nin bir dakika mak. bakabileceği sayfa sayısı gibi şeyler varsa ayrıca file_Get_contest ile siteye bağlanaya sürekli çalışıır. Ama
Curl ile yaparsan mesela 15 saniye dene olmadı diğerine geç diyebilirsin.
Bence kendini biraz daha geliştir. Bu işi yapıyorsan Dökümanlarda COSMİC in eklediği döküman başarılı.
Düzenli ifadelerle (reg) anlatmıştı. Sende sendeki fonksiyonla ve for döngüleriyle yapabilirsin.
Kolay gelsin.
-
bence xpath kas
/html/body/div[3]/div/div[4]/table/tbody/tr/td[2]/div/div[3]/div[3]/div[5]/form/div[3]/div/table/tbody/tr[4]/td[3]/div/strong
mesela bu 1. fiyat alanının yolu
-
SnipeTR bunu yazdı
$veri = ara('class="click_change_currency jq_tooltip toggle_price_per_night_or_stay">', '', $icerik); Neyle Neyin arası belirlememişsinki.
$veri = ara('class="click_change_currency jq_tooltip toggle_price_per_night_or_stay">', '<', $icerik); yap bari.
Kodlarına bakmadım ama yukarıdaki olur sanırım.
Ayrıca file_get_contents ile bi yere kadar gidersin sitede referer kontrol sistem, tarayıcı kontrol sistemi, sayfalar arası hızlı geçiş koruması, bir ip nin bir dakika mak. bakabileceği sayfa sayısı gibi şeyler varsa ayrıca file_Get_contest ile siteye bağlanaya sürekli çalışıır. Ama
Curl ile yaparsan mesela 15 saniye dene olmadı diğerine geç diyebilirsin.
Bence kendini biraz daha geliştir. Bu işi yapıyorsan Dökümanlarda COSMİC in eklediği döküman başarılı.
Düzenli ifadelerle (reg) anlatmıştı. Sende sendeki fonksiyonla ve for döngüleriyle yapabilirsin.
Kolay gelsin.
Hocam yardımın işin teşekkürler.Ama dediğin gibi yaptım hatta sonlardım dediğin gibi ama veri gelmiyor.Acaba engelleme gibi bir durum olabilir mi ? Ama title çekiyorum geliyor.Araştırıyorum bir yandan da sizin yazdıklarınızı takip ediyorum :)
Kodlar
<?
function ara($bas, $son, $yazi)
{
@preg_match_all('/' . preg_quote($bas, '/') .
'(.*?)'. preg_quote($son, '/').'/i', $yazi, $m);
return @$m[1];
}$site = "http://www.booking.com/hotel/tr/tempo-4-levent.tr.html?sid=c67c9da94a4acb5a4b6d3b313295a262;dcid=1";
$icerik = file_get_contents($site);
$veri = ara('class="click_change_currency jq_tooltip toggle_price_per_night_or_stay">', '</strong>', $icerik);
echo 'Çekilen Veri :' .$veri[0];
?> -
Çekerken taglardaki başlarıda belirt istersen
'<strong class=click_change_currency jq_tooltip toggle_price_per_night_or_stay>' , '</strong>'
gibi.
hotellerin sonuna ?aid=330843 getirirsen, bu sayfalardan çekmen daha kolay olabilir. mesele böyle:
http://www.booking.com/hotel/tr/tempo-4-levent.tr.html?aid=330843
Edit:Bu şekilde daha zor imiş.çunku room idler devreye giriyor.
cracker tarafından 09/Nis/13 12:07 tarihinde düzenlenmiştir
