socks24 Sitesinden İlk baslangıcta 10. saniyede veriler alınır sonra her saat başı veriler tazelenir.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
############### K O M U T L A R B Ö L Ü M Ü #############
## ##
## Botumuzun sunucu üzerindeki çalıştıran komutlarını ##
## kendinize özel yapabilir yada asla değiştirmeden ##
## mevcut hali ile kullanabilirsiniz ##
## ##
##############################################################
set tor(sure) "60"
set tor(klasor) "/home/irclogin/Unreal3.2.8/tor.conf"
set tor(kanal) "#Log"
set tor(sebep) "Tor kullandığınız tespit edildiği için, sunucudan uzaklaştırıldınız."
utimer 10 [list tor:guncelle]
if {![string match "*tor:guncelle*" [timers]]} {
timer $tor(sure) tor:guncelle
}
proc tor:guncelle {} {
global botnick tor
set sayfa1 [::http::geturl
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
5000]
set htm [::http::data $sayfa1]
::http::cleanup $sayfa1
set x 0
foreach htmm [split $htm \n] {
if { [string match -nocase "*Read more »<\/a>*" $htmm] } {
regexp -- {<a href='(.*?)' title='.*? | .*?'>Read more »<\/a>(.*)$} $htmm -> link htmm
if {$x == 4} {break}
# Sayfaya giris
set sayfa [::http::geturl $link -timeout 5000]
# Sayfa verileri
set html [::http::data $sayfa]
# Kapanis
::http::cleanup $sayfa
# Aradaki verileri yakalama
set ipno [string range $html [expr [string first "<span style=\"color: rgb\(255, 255," $html]] [expr [string last "<div class='post-footer'>" $html]]]
# Satir Satir Bolme islemi
foreach ip [split $ipno \n] {
# satirlar icinde sock yazisi olan varsa sorgu icine almama baştaki işaret "!" eşit değilse demek yani satirda sock kelimesi varsa sorgu icine girmesin
if { ![string match -nocase "*sock*" $ip] } {
# kelime veya isaretleri ayiklama
set line [lindex [string map {":" " " "<" ""} [string map {"Cleaned:" "" "Check Report:" "" "<pre class=\"alt2\" dir=\"ltr\" style=\"border: 1px inset ; margin: 0px; padding: 0px; overflow: auto; width: 500px; height: 300px; text-align: left;\"><span style=\"font-weight: bold;\">" "" "<div style='clear: both;'>" "" "<\/div>" "" "</span>" "" "<\/pre><br>" "" "<span style=\"color: rgb(255, 255, 255);\">" ""} $ip]] 0]
# Gelen satir boşa eşit değilse sorgu icine girsin. Bir nevi boş satirlari silme
if {![string match "" $line]} {
# a=yazmak w=olusturmak r=okutmak
set gh [open $tor(klasor) a]
# puts yazdirma islemi
puts $gh "ban user \{ mask *@$line\; reason \"$tor(sebep)\"\; \}\;"
# Dosyayi kapatmak
close $gh
}
}
}
}
incr x
}
set countfile [open $tor(klasor) "r"]
set numara 0
while {[gets $countfile line] >= 0} {
incr numara
}
close $countfile
putquick "PRIVMSG IRC REHASH"
putquick "PRIVMSG $tor(kanal) :› Koruma listesi güncelleniyor."
putquick "PRIVMSG $tor(kanal) :› Eklenen IP: $numara"
putquick "PRIVMSG $tor(kanal) :› Ban Tipi: GZLINE"
putquick "PRIVMSG $tor(kanal) :› Eklenen Klasör: $tor(klasor)"
::http::cleanup $connect
timer $tor(sure) tor:guncelle
}
putlog "UnrealIRCD TOR TCL v1.0 - Written By CLubber"