ASP ile Bot Yapalım
  • Güncelleme Tarihi: Nisan 08, 2024 (20:42)
  • 1,242
“ Arkadaşlar genelde PHP kullanırlar ama biz de size klasik ASP ile bot yapımını anlatalım istedik. Buyurun bakalım nasıl yapılıyormuş. ”

Arkadaşlar öncelik oturup bunu kendim kodlamadım. Sitelerde bir çok yerde bulacağınız ve yabancı kaynaktan alınıp Türkçe diline entegre edilmiş bir koddur. Sıfırdan kodlasanız da benzer bir şey yapmak zorunda kalacaksınız çünkü sistem standart kodlama ile işliyor. Geriye kalan değişimler ise sadece sizin hayal gücünüzde olan özelleştirmelerdir.

Kodları vermeden önce bunun XML üzerinden veri çekmek olmadığını belirteyim. Bu bildiğiniz HTML kaynakta bulunan kodlar arasından verileri çekmektir.

Veri çekeceğimiz örnek sayfa bu olsun:

< font size="3">< b>Acaba< /b>< /font>< br>< br>Dönelim< br>Döndürsün bizi< br>Kalbin akıp giden bulutlara benzeyen sesi
< br>Yağmursuz bir yağmura açılmış kapılardan< br>Ve akılda kalan bir yokuştan< br>Ve yalnız çocuklara özgü o sonsuz sinema koltuklarından
< br>Ve çocukluktan< br>Dönelim< br>Dönelim mi biz< br>Gençlikten, oralardan< br>Mutluluğu bir kabuk gibi saran mutsuzluklardan
< br>Dönelim mi acıya< br>Acıya, büyük acıya< br>Ve soralım mı acaba< br>Ey büyük yalnızlık insansan eğer< br>Bir kaya< br>Dalgalar yalarken onu
< br>O bakarken kaskatı kalabalıklara< br>Ah, kalbin bulut bulut akan sesi.< br>< br>Bütünüyle bir semte benziyor Ruhi Bey
< br>Binlerce, on binlerce kedinin hep birden kımıldadığı< br>Kedilerden örülmüş bir semte< br>Ve soğuk bir tuvalde yerini bulamamış renkler gibi
< br>Soğuk ve ayakta tutan çelişkileri< br>Bir görünümden bir başka görünüme kolayca sıçranan< br>Her şeyin, ama herşeyin çok dıştan farkedildiği
< br>Eh belki de bir satır fazlalığı ya da bir satır eksikliği< br>Belki de genç bir şairden ödünç alınan.
< br>< br>Yürüyor mu, yürümeyi mi düşünüyor Ruhi Bey< br>Düşünmesi daha mı sonra koyuluyor yola< br>Nereye gidecek ama, nereye varacak sanki
< br>Yoksa bir oyun tadı mı buluyor bunda< br>Oyundan atılmaktan korkmayan bir oyuncu gibi< br>Boşvermiş de sanki oyunun kurallarına
< br>Üstelik son bölümde, perdenin kapanmasına< br>Azıcık vakit kalmış< br>Ya da vakit var daha. Ama ne çıkar< br>Gövdenin yazgıya başkaldırması mı
< br>Ruhi Beyin< br>Başkaldırması mı yoksa< br>< br>Vaktinden önce anlamanın şaşkınlığı mı< br>Vaktinde anlamanın sevinci mi
< br>Ya da biraz geç kalmanın< br>O gereksiz tedirginliği mi< br>Hangisi< br>< br>Ama belli ki sonundayız her şeyin
< br>En sonunda.< br>< br>< b>Eklenme Tarihi:< /b> 26.06.1999< br>< br>< b>< a href="?sayfa=sair&sair_id=71&sair=Edip Cansever">Edip Cansever< /a>< /b>< br>< br>
Puan: < b>6.44/27< /b> Oy< br>< font color="#333399">
Şiire puan vermek için:< br>
Aşağıdaki kodu sağındaki kutuya girip, puanınızı seçin ve Gönder butonunu tıklayın.< br>
< /font>

Yukarıda verdiğimiz içeriği kaynak kodlardan incelerseniz eğer burada bulacağımız nokta kodlar içerisinde benzersiz alanları bulabilmek olacaktır. Bu kısımda örneğin;

< font size="3">< b>

Yukarıda verdiğimiz kısım şiirin başlık kısmı olmaktadır ve bunu alacağız. Bitişi için ise;

< /b>< /font>< br>< br>

Üstteki kısım ise başlığımızın bitiş noktası olacaktır. Şiirin gövdesi, title kısmı vb ne isterseniz bunun gibi benzersiz alanları bularak içerik çekme şansınız vardır. Şimdi sıra verileri çekmek için gereken ASP kodlama sistemine geliyor.

Burada iki türlü kod çekim sistemi olan "aspTear" veya "MSXML2.ServerXMLHTTP" kısmından size uygun olanı tercih edersiniz. Dikkat edin karakter sorunu olursa bir diğerini kullanın.

aspTear ile veri çekimi;

< %
strVeriCekilecekAdres = "http://site.tld/ornek.html"
Set stTear = Server.CreateObject("Softwing.AspTear")
stTear.FollowRedirects = True 'Yönlendirme varsa onun için kullanırız
 
blnAlinanVeri = stTear.Retrieve(strVeriCekilecekAdres,2, "","","") 'Veriyi aldık ve değişkene atadık
 
Set stTear = Nothing
% >

ServerXMLHTTP ile veri çekme;

< %
strVeriCekilecekAdres = "http://site.tld/ornek.html"
 
Set oXMLHttp = Server.CreateObject("MSXML2.ServerXMLHTTP")
oXMLHttp.open "GET", strVeriCekilecekAdres, False
oXMLHttp.Send()
blnAlinanVeri = oXMLHttp.responseText 'Veriyi aldık ve değişkene atadık
Set oXMLHttp = Nothing
% >

Yukarıda verdiğimiz kodlarla veriyi çekmiş olduk. Şimdi bunları işlemek için "RegExp"i kullanacağız. Burada biz "aspTear" gidiyoruz;

< %
Function VeriBul(BaslangicDegeri,BitisDegeri,Verimizden)
 
Set RegEx = New RegExp
 
With RegEx
.IgnoreCase = True
.Global = True
.Pattern = "(" & BaslangicDegeri & ")(.+?)(" & BitisDegeri & ")"
End With
 
Set Sonuc = RegEx.Execute(Verimizden)
 
For Each i In Sonuc
VeriBul =  i.SubMatches(1)
Next
 
If IsEmpty(VeriBul) Then VeriBul = "Sonuc Yok"
Set RegEx = Nothing
Set Sonuc = Nothing
 
End Function
 
Function veriCek(Adresten)
 
On Error Resume Next
Set strTear = Server.CreateObject("Softwing.AspTear")
strTear.FollowRedirects = True
veriCek = strTear.Retrieve(Adresten,2, "","","")
Set strTear = Nothing
 
End Function
 
strDeger1 = "< font size\='3'>< b>"
strDeger2 = "< /b>< /font>< br>< br>"
strDeger3 = "< /b>< /font>< br>< br>"
strDeger4 = "< br>< br>< b>Eklenme Tarihi:< /b>"
 
strDeger5 = "< title>"
strDeger6 = "< /title>"
 
HTMLalAdresten = veriCek("http://orneksiteadresi.com/ornek.html")
 
strBaslikBul = VeriBul(strDeger1,strDeger2,HTMLalAdresten)
strSiiriBul = VeriBul(strDeger3,strDeger4,HTMLalAdresten)
 
strTitleBul = VeriBul(strDeger5,strDeger6,HTMLalAdresten)
 
Response.Write(strBaslikBul)
Response.Write("< hr>")
Response.Write(strSiiriBul)
Response.Write("< hr>")
Response.Write(strTitleBul)
% >

Function kısımları içerisinde "VeriCek" ve "VeriBul" sabit olup değiştirmeyin. Ayrıca kodlar içerisinde bulunan (" ve =) işaretleri için (\) kullanılmıştır bunlara da dikkat ediniz!

Tarih: Nisan 08, 2024

Admin
Admin

Kendi halinde takılan ve uğraşan bir birey. Aynı zamanda UnFau sitesini kuran bir dünya vatandaşı.

Yorumlar:

Üzgünüm! Kayıt bulunamadı..

Yorum yap:

Son İçerikler

Asperger Hastalığı Nedir?
  • Temmuz 06, 2024 (11:09)
  • 822
Ay toprağından oksijen üretimi için işbirliği
  • Nisan 30, 2024 (21:45)
  • 1,399
En çok yatırımcıya sahip ülkeler
  • Nisan 30, 2024 (21:43)
  • 1,373
Çevre felaketinde gen etkisi
  • Nisan 30, 2024 (21:39)
  • 1,010
Senin Adın Fragmanı İzle
  • Nisan 30, 2024 (21:41)
  • 985
Beraber Çalışalım

Başarılı bir projeye mi ihtiyacınız var?

Durma Tıkla
#
  • #
  • #
  • #
  • #
  • #
Duyuru

Yoğunluktan dolayı telefonlar kaldırılmıştır! Lütfen mail adresi veya iletişim formu ile bize ulaşınız.

Mail Adresleri [email protected]