• 15-01-2016, 01:14:48
    #1
    merhabalar;
    http://busum.ml/kod/ <<bu adresteki kodlardan asagıdakı resımde ısaretledıgım yerlerı ayrı ayrı cekmek ıstıyorum yardımcı olabıleceklere sımdıen cok tesekkur ederım "ilahiyat fakutlesinde ogrencıyım bu ısler ıle sevdıgım ıcın ugrasıyorum, fakat hıc bır egıtım almadıgım ıcın zorlanıyorum " (ornek kodlarla 5-6 gündür bunun için ugrasıyorum ama başaramadım konu acayım dedım)>>




    buradakı resımdekı ısaretlı yerlerı suna benzer sekılde ayrı ayrı cekmek ıstıyorum:

    http://busum.ml/kod/ornek.html


    Gerçekten çok yoruldum ama yapamadım, yardımcı olabilecek olursa cok sevınırım sımdıden cok tesekkur ederım, kolay gelsın

    (ogrencı no ve sıfre ıle gırıs yapıldıkdan sonra kodların asıl cekılecegı adres: http://obisis2.erciyes.edu.tr/Defaul...bInd=2&tabNo=3 )
  • 16-01-2016, 14:33:20
    #2
    @mikoc;
    Merhaba kardeşim. İstediğin Tarzda Bi Bot Yaptım. Çıktısı Bu Şekilde :




    Kodlarıda Paylaşayım.
    http://pastebin.com/AaYH4wpD


    Kendi Sitemede Attım .txt olarak
    http://programciyiz.biz/r10.net/bothaber.txt




    Hatırlatma, Muhtemelen Bu Verileri Online olarak çekmek için kullanıcı adı ve şifre ile hesabına giriş yapman gerekecek. Çünkü her öğrencinin ayrı profili var. bu işlemi cURL in post metodu ve Cookie saklama yöntemiyle yapabilirsin.

    Yani Kullanıcı adı ve şifreyi cURL ile post ettireceksin. Giriş Başarılı olursa oturum verilerini cURL ile kaydedeceksin ki, botun doğru düzgün çalışabilsin.


    Eğer Sitene koyduğun şekilde html olarak kaydedersen bu kodlarla yaparsın.




    Burayada Yazayım Bari

    <?php
    		
    		
    		# CURL Fonksiyonumuz
    		
    		function curlOku( $url )
    		{
    			$ch     = curl_init();
    			$timeout = 0; 
    			curl_setopt( $ch, CURLOPT_URL, $url );
    			curl_setopt ($ch, CURLOPT_CAINFO, dirname(__FILE__)."/curl_cert.pem");
    			curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7");
    			curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
    			curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $timeout );
    			$file_contents = curl_exec( $ch );
    
    			if($file_contents == false){
    				return curl_error($ch);
    				curl_close($ch);
    			}else{
    				curl_close( $ch );
    				return str_replace(array("\n", "\r", "\t"), null,$file_contents);;
    			}
    		}
    
    ?>
    
    <!doctype HTML>
    <html>
    
    	<head>
    		<title> R10.Net Örnek Bot Sistemi </title>
    		<meta charset="utf-8"/>
    	</head>
    	
    	<html>
    		
    		<body>
    		
    		
    <?php
    
    
    $sayfaGetir = curlOku("http://busum.ml/kod/");
    
    // Öğrenci No Alalım
    preg_match_all('#<span id="Banner1_Kullanici1_txtOgrenciNo" (.*?)>(.*?)</span>#', $sayfaGetir, $ogrenciNo );
    
    echo "<br/><br/> Öğrenci No: " . $ogrenciNo[0][0];
    
    
    // Ad Soyad Alalım
    preg_match_all('#<span id="Banner1_Kullanici1_txtAdiSoyadi" (.*?)>(.*?)</span>#', $sayfaGetir, $ogrenciAdSoyad );
    
    echo "<br/><br/> Ad - Soyad " . $ogrenciAdSoyad[0][0];
    
    
    // Sınıf - Gano Alalım
    preg_match_all('#<span id="Banner1_Kullanici1_txtSinifSeneGano" (.*?)>(.*?)</span>#', $sayfaGetir, $sinifGano );
    
    echo "<br/><br/> Sınıf- Gano Birleşik:<b> " . $sinifGano[0][0] . "</b>"; 
    
     // Eğer Gano Ve Sınıfı Ayırmak istersen Aşağıdaki Kodları Dene ;)
    
    # Gano - Sınıfı Ayrı Ayrı Yazdırmak: 
    $ganoSinifAyir = explode('-', $sinifGano[0][0]);
    echo "<br/><br/> Sınıfı: <b>" . $ganoSinifAyir[0] . "</b>";
    echo "<br/><br/> Gano: <b> " . $ganoSinifAyir[1] . "</b>";
    
    
    
    
    // Ders Notlarını Alalım
    preg_match_all('#<table id="ctl02_tblNotDurum" width="100%">(.*)<span id="ctl02_Label1" class="NormalBlack">#', $sayfaGetir, $dersTablo ); 
    
    
    
    // Tablodaki Renkli Yerlerin Açıklamalarını Alalım.
    preg_match_all('#<span id="ctl02_Label1" class="NormalBlack">(.*?)</td>#', $sayfaGetir, $tabloAciklamalar ); 
    
    echo "<div class='notdurumu' style='margin:20px 5px 100px 15px;'>";
    echo $dersTablo[0][0];
    echo $tabloAciklamalar[0][0];
    echo "</div>";
    
    
    // Aşağıda Jquery İle Ayıklayamadığımız Html Nesnelerini ayıklayacağız.
    
    ?>
    
    <script src="jquery.min.js"></script>
    <script>
    
    <!-- Ayıklayamadığımız Öğeleri Jquery İle Silelim ;) !-->
    	$(document).ready(function(){
    		
    		var tabloUstu = $("table#ctl02_tblNotDurum > tbody > tr:first");
    						tabloUstu.remove();
    	
    	});
    
    </script>
    
    	</body>
    
    
    </html>
  • 17-01-2016, 22:42:24
    #3
    Hocam Allah razı olsun, Size çok teşekkür ederim, bu kadar güzel açıklama beklemiyordum, gerçekten harikasınız, Size tekrardan çok teşekkür ederimmmmmmmm
  • 18-01-2016, 18:18:42
    #4
    @mikoc; Hocam Allah Sizdende Razı olsun ne demek faydamız dokunduysa !