Konuyu Oyla:
  • Toplam: 1 Oy - Ortalama: 5
  • 1
  • 2
  • 3
  • 4
  • 5
[YENİ] Proxy Tarama ve Hızlarını Test Etme
#1
Custon Host kullanrak yaptığım için her ne kadar Turkcell bölümünde olması gerekse de deneme için yaptığımdan bu bölüme koydum. 

Kod her zamanki gibi proxylerin çalışabilirliğini test ettikten sonra hızlarını test etme aşamasına geçiyor ve /sdcard/proxylist.txt dosyasına kaydediyor. Free yöntem ile test ediyor olmasını proxy'nin hızı konusunda gerçeğe en yakın bilgi verme konusunda işe yarar diye düşünüyorum. Çünkü ara sunucular ile proxy test etme yanıltıcı olabilir, özelliklere ara sunucular yavaş ise hızlı proxy yakalamaya çalışmak anlamsız olacaktır.

Test edin sonuçlara göre iyileştirme yapmaya çalışırım.

PHP Kod:
#-*-coding:utf8;-*-
#qpy:2
#qpy:console

import threading
import time
re
import androidhelper
import urllib2
print "\033[94m'QPYTHON.NET' Proxy Tarama & Hız Testi\x1b[m"

### BURAYA HOSTU YAZIN ###
CUSTOM_HOST ="wos.turkcell.com.tr"
##########################

d=androidhelper.Android()
islem=["SSLProxies.org","GatherProxy.com","Spys.ru","Pano Tarama"]

########## PROXY TARAMA FONKSIYONLARI ############
def wtf(yazboy):
    
dosya=open("/sdcard/proxylist.txt","ab")
    
dosya.write(yaz+" "+boy+"\n")
    
dosya.close()
    
def speed(ip):
    try:
        
proxy_handler urllib2.ProxyHandler({'http'ip})
        
opener urllib2.build_opener(proxy_handler)
        
urllib2.install_opener(opener)        
        a
=urllib2.Request(test_url)
        
a.add_header("Host"CUSTOM_HOST)
        
a=urllib2.urlopen(atimeout=4)
        
t=time.time()
        
sayi=0
        
try:
            print 
"bekleyin.."
            
while True:
                
c=a.read(1024*32)
                if 
not c: break
                
sayi+=1024*32
                
if time.time()-t>5: break
                
            
son=time.time()-t
            
if sayi/float(son)/1000000 1:
                
mb str(sayi/float(son)/1000000)[:4]+" MByte/Sn"
                
print ipmb
                wtf
(ipmb)
            else:
                
kb str(sayi/float(son)/1000).split(".")[0]+" KByte/Sn"
                
print ipkb
                wtf
(ipkb)
        
except:
            
pass
    except
:
        
pass

test_url
="http://nfhost.net/~qpython/test.rar"
test_proxy = []
zaman=time.ctime()
tbl = []                                                                                
ValidIPRegex 
'(\d+\.\d+\.\d+\.\d+).*?(\d{2,5})'                                        
tekrarsayisi 
1                                                                        
maxthreads 
100                                                                        
LOADURL 
'http://ip.jsontest.com'                                                                
time_out 
3                                                                            
network 
True                                                                            
                                                                                        
def is_OK
(ip):                                                                            
    
global network                                                                        
    
try:                                                                                
        proxy_handler 
urllib2.ProxyHandler({'http'ip})                                
        opener 
urllib2.build_opener(proxy_handler)                                    
        urllib2
.install_opener(opener)                                                    
        req 
urllib2.Request(LOADURL)
        
req.add_header("Host",CUSTOM_HOST)        
        t 
time.time()                                                                    
        res 
urllib2.urlopen(reqtimeout=time_out)                                    
        t2 
time.time() - t                                                            
        
if res.read().find('{"ip":') > -1:                                                    
            
print ip'çalışıyor't2'saniye'                                            
            test_proxy
.append(ip)                                                                        
        
else:                                                                            
            
print ip'proxy gereken cevabı yollamadı, atlanıyor.'                        
        network 
True                                                                    
    except Exception 
as e:                                                                
        
if str(e) == '<urlopen error [Errno 101] Network is unreachable>':                
            
print 'Ağ hatası, 1 saniye sonra tekrar denenecek'                            
            network 
False                                                                
            time
.sleep(1)                                                                
            is_OK
(ip)                                                                    
        
else:                                                                            
            network 
True                                                                
                                                                                        
def baslat
():                                                                            
    sayac 
0                                                                            
    
while sayac tekrarsayisi:                                                            
        
print "\033[94m"+str(sayac 1) + '. Tarama başlatıldı\x1b[m'                                    
        
for x in tbl:                                                                    
            
while not network:                                                            
                time
.sleep(1)                                                            
            
while threading.activeCount() >= maxthreads:                                
                time
.sleep(0.1)                                                            
            threading
.Thread(target=is_OK,args=(x,)).start()                            
        sayac 
sayac 1                                                                                                                                                         
##########################################################################################
def webproxy(url):
    
import urllib
    data     
urllib.urlencode({"url"url})
    
istek      urllib2.Request("http://webproxy.at/surf/index.php"data)
    
istek.add_header("User-Agent""Mozilla")
    
oku        urllib2.urlopen(istek)
    return 
oku.read()


def ssl():
    try:
        
urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler({})))
        print 
"\033[92mTarama yapılacak...\x1b[m"
        
oku webproxy("http://www.sslproxies.org/")
        
clp oku.replace(' '':')
        
clp2 re.findall(ValidIPRegexclp)
        for 
x in clp2:
            
x[0] + ':' x[1]
            if 
not a in tbl:
                
tbl.append(a)    
        baslat
()
        
time.sleep(4)
    
except:
        print 
"\ninternet baglantisi yok!\n"
        
d.makeToast("internet bağlantısı yok")

def gather():
    
def tara():
        
gport = ["3128","8080","80"]
        
d.dialogCreateAlert("port seçin")
        
d.dialogSetMultiChoiceItems(gport)
        
d.dialogSetPositiveButtonText("Tamam")
        
d.dialogShow()
        
sonuc=d.dialogGetResponse().result
        rp 
d.dialogGetSelectedItems().result
        
if rp == []:
            
d.makeToast("En az bir port seçmelisiniz!")
            
tara()
        else:
            try:
                
urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler({})))
                
oku webproxy("http://gatherproxy.com/proxylist/country/?c="+country[rc])
                
clp oku.replace(' '':')
                
clp2 re.findall(ValidIPRegexclp)    
                
for x in clp2:
                    for 
i in rp:
                        
x[0] + ':' gport[i]
                        if 
not a in tbl:
                            
tbl.append(a)    
                baslat
()
                
time.sleep(4)
            
except:
                print 
"\nbağlantı yok."
                
d.makeToast("internet yok.")
            
    
country = ["Turkey","Germany","France","Netherlands"]        
    d
.dialogCreateAlert("ülke seçin")
    
d.dialogSetSingleChoiceItems(country)
    
d.dialogSetPositiveButtonText("Tamam")
    
d.dialogShow()
    
sonuc=d.dialogGetResponse().result
    rc 
d.dialogGetSelectedItems().result[0]
    print 
"\033[92m"+country[rc]+" seçildi.\x1b[m"
    
dosya=open("/sdcard/proxylist.txt","ab")
    
dosya.write("-"+country[rc]+"-"+"\n")
    
dosya.close()
    
tara()
        

def spysru():
    
def tara():
        
gport = ["3128","8080","80"]
        
d.dialogCreateAlert("port seçin")
        
d.dialogSetMultiChoiceItems(gport)
        
d.dialogSetPositiveButtonText("Tamam")
        
d.dialogShow()
        
sonuc=d.dialogGetResponse().result
        rp 
d.dialogGetSelectedItems().result
        
if rp == []:
            
d.makeToast("En az bir port seçmelisiniz!")
            
tara()
        else:
            try:
                
urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler({})))
                
oku webproxy("http://spys.ru/free-proxy-list/"+country[rc]+"/")
                
clp re.findall('>(\d+\.\d+\.\d+\.\d+)<'oku)
                for 
x in clp:
                    for 
i in rp:
                        
':' gport[i]
                        if 
not a in tbl:
                            
tbl.append(a)    
                baslat
()
                
time.sleep(4)
            
except:
                print 
"\nbağlantı yok."
                
d.makeToast("internet yok.")
                
    
ulke = ["Turkey","Germany","France","Netherlands"]
    
country = ["TR","DE","FR","NL"]        
    d
.dialogCreateAlert("ülke seçin")
    
d.dialogSetSingleChoiceItems(ulke)
    
d.dialogSetPositiveButtonText("Tamam")
    
d.dialogShow()
    
d.dialogGetResponse().result
    rc 
d.dialogGetSelectedItems().result[0]
    print 
"\033[92m"+ulke[rc]+" seçildi.\x1b[m"
    
dosya=open("/sdcard/proxylist.txt","ab")
    
dosya.write("-"+ulke[rc]+"-"+"\n")
    
dosya.close()
    
tara()


    
def manuel():
    
dosya=open("/sdcard/proxylist.txt","ab")
    
dosya.write("-Pano-\n")
    
dosya.close()
    try:
    
        
print "\033[92mPanoya için tarama yapılacak...\x1b[m"
        
d.getClipboard().result
        ara 
re.findall(ValidIPRegexp)
        for 
i in ara:
            
i[0]+':'+i[1]
            if 
not a in tbl:
                
tbl.append(a)
        
baslat()
        
time.sleep(4)
        
d.makeToast("Proxyler, /sdcard/proxylist.txt dosyasına kaydedildi.")
    
except:
        print 
"\nbağlantı yok."
        
d.makeToast("internet yok.")
        
d.dialogCreateAlert("işlem seçin")
d.dialogSetSingleChoiceItems(islem)
d.dialogSetPositiveButtonText("Tamam")
d.dialogShow()
sonuc=d.dialogGetResponse().result
d.dialogGetSelectedItems().result[0]
print 
islem[r]

dosya=open("/sdcard/proxylist.txt","ab")
dosya.write("\n#######"+zaman+"#######\n"+islem[r]+"\n")
dosya.close()

if 
islem[r] == islem[0]:
    
ssl()
if 
islem[r] == islem[1]:
    
gather()
if 
islem[r] == islem[2]:
    
spysru()
if 
islem[r] == islem[3]:
    
manuel()

time.sleep(2)
print 
"\nHiz Testi Baslatiliyor, lutfen bekleyiniz...\n"
for i in test_proxy:
    
speed(i)  


Ek Dosyalar
.py   speed.py (Dosya Boyutu: 9.39 KB / İndirme Sayısı: 87)
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#2
Güzel Olmuş

Ara
Cevapla
#3
Guzele benziyor
Ara
Cevapla
#4
Beyler ben dosyayi alamiyoru kopyalama islwmi olmuyor birisi allah rızasi için bana gönderebilir mi e posta : o.seko5@yandex.ru
Ara
Cevapla
#5
elinize sağlık çok yararlı bi çalışma
Ara
Cevapla
#6
Ben şöyle bişey denedim

Koddaki 91.4.244.254:3128 proxy kodun hız denemesiyle = 364 kb/sn çıktı.
Aynı proxy yi config içinde speed test de denedim

Sonuc 331 kb/sn çıktı yani %95 lik bi doğruluk var bence abi bir kez daha tebrikler Smile
Ara
Cevapla
#7
Mükemmel konu Smile
Ara
Cevapla
#8
Güle güle kullanın Wink varsa eksik bir şey ekleyebiliriz
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#9
Mükemmel konu abi ama keşke daha fazla çekeceği site eklesen ve portları fazlalaştırsan herkez 3128 e yoğnlaştığı için sağlam proxy kalmıyor değişik portta acayip hızlı proxyler ckıyo
Ara
Cevapla
#10
3 site var, diğer sitelerdeki proxyler de genelde aynıları çıkıyor. Ayrıca beğendiğiniz bir kaynaktan kendiniz kopyalama yapip koddaki pano tarama ile de test yapabilirsiniz.
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla

{lang: 'en'}


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  GÜNCEL Proxy Tarama normal Net gecemor 143 120,318 13-09-2022, Saat: 00:50
Son Yorum: perry
  python proxy , requests sorunu $cr!pt HUB 3 831 23-04-2022, Saat: 19:18
Son Yorum: gecemor
  GÜNCEL PROXY RANGE TARAMA (İSTEK) Bahadır Bera Üzer 1 1,047 26-04-2020, Saat: 21:24
Son Yorum: oktay811
  YENİ Proxy Tarama Modülü gecemor 57 44,223 26-04-2020, Saat: 18:01
Son Yorum: Bahadır Bera Üzer
  YENİ Android 7 nougat için qpython3 proxy Tarama ve oto config 55lim 37 36,249 06-04-2017, Saat: 17:51
Son Yorum: metemli333

Hızlı Menü:


Konuyu Okuyanlar: 2 Ziyaretçi
Change Theme