Qpython ve qpython3 uyumlu otomatik proxy taramalı oto config
Vpnbook oto config den esinlenerek yapıldı
PHP Kod:
#-*-coding:utf8;-*-
#qpy:2
#qpy:console
import time, re, base64, os
import androidhelper, threading
try:
import urllib2
kip="ab"
except:
import urllib.request as urllib2
kip="a"
print("\033[94m==============================\x1b[m")
print("\033[94m=='QPYTHON.NET' Proxy Tarama==\x1b[m")
print("\033[94m==============================\x1b[m")
CUSTOM_HOST = "turkcell.com.tr"
d=androidhelper.Android()
v = '/sdcard/freevpn/'
if not os.path.isdir(v):
os.mkdir(v)
for i in os.listdir(v):
os.remove(v+"/"+i)
########## PROXY TARAMA FONKSIYONLARI ############
zaman=time.ctime()
tbl = []
ValidIPRegex = '(\d+\.\d+\.\d+\.\d+).*?(\d{2,5})'
tekrarsayisi = 1
maxthreads = 50
LOADURL = 'http://ip.jsontest.com'
time_out = 3
network = True
def bga():
try:
print(base64.decodestring(set))
except:
print(str(base64.b64decode(set.encode("ascii")).decode("ascii")))
def wtf(yaz, t2):
z = str(t2)[:4]
yaz2=yaz.replace(":"," ")
dosya=open("/sdcard/proxylist.txt", kip)
dosya.write(yaz+" "+z+"sn\n")
dosya.close()
dosya2=open("/sdcard/freevpn/"+z+"sn-"+str(yaz2)+".ovpn" ,"w")
dosya2.write(
"http-proxy-option CUSTOM-HEADER Host "+CUSTOM_HOST+"\n"
"http-proxy "+yaz2+"\nremote 212.129.33.61 443\n"
"<auth-user-pass>\nfreevpnme\n"+str(freevpn_pass)+"\n</auth-user-pass>\n"+
"""
client
dev tun1
proto tcp
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 3
cipher AES-128-CBC
fast-io
pull
route-delay 2
redirect-gateway
<ca>
-----BEGIN CERTIFICATE-----
MIIE6DCCA9CgAwIBAgIJAPM3KK/lGqwoMA0GCSqGSIb3DQEBCwUAMIGoMQswCQYD
VQQGEwJNVDEMMAoGA1UECBMDTUxUMREwDwYDVQQHEwhWYWxsZXR0YTETMBEGA1UE
ChMKRnJlZVZQTi5tZTETMBEGA1UECxMKRnJlZVZQTi5tZTEWMBQGA1UEAxMNRnJl
ZVZQTi5tZSBDQTETMBEGA1UEKRMKRnJlZVZQTi5tZTEhMB8GCSqGSIb3DQEJARYS
Y29udGFjdEBmcmVldnBuLm1lMB4XDTEzMDgyMDA2NTI0NVoXDTIzMDgxODA2NTI0
NVowgagxCzAJBgNVBAYTAk1UMQwwCgYDVQQIEwNNTFQxETAPBgNVBAcTCFZhbGxl
dHRhMRMwEQYDVQQKEwpGcmVlVlBOLm1lMRMwEQYDVQQLEwpGcmVlVlBOLm1lMRYw
FAYDVQQDEw1GcmVlVlBOLm1lIENBMRMwEQYDVQQpEwpGcmVlVlBOLm1lMSEwHwYJ
KoZIhvcNAQkBFhJjb250YWN0QGZyZWV2cG4ubWUwggEiMA0GCSqGSIb3DQEBAQUA
A4IBDwAwggEKAoIBAQCTfPyNEiAmHa4221ZFA2tPtvy52mGiamrZvMnp5xnEsny9
INx3aMtmkglgwHQtemqgHbXVdiqnwiZl/jdQTj8A4o373BwYiOT9YyVI2dYnGp0s
Kxe0yXHhv8lqeQoBO9hQz7P1vL4dbO6uNKa0kzpZYK5VXyJOEgkndlERjGWj0d7H
dF9nOME+meDNUxfiuZJmtFYbsAdZ+PPPIPkwKvCaCh0rwXM+bwq7Y4aZzLs3MnbB
72X0sth2GCmD+btC+6UU+e9jYbuqso35RPn4yz3/TJba816HFj4vTTziUFhSzlRo
YOfOzaHEblDQnTYSdMFj+Dh8ZmGVhD4Yu7upX0lBAgMBAAGjggERMIIBDTAdBgNV
HQ4EFgQUNLfk67N6K3hyuvY/S5NtySN4pu0wgd0GA1UdIwSB1TCB0oAUNLfk67N6
K3hyuvY/S5NtySN4pu2hga6kgaswgagxCzAJBgNVBAYTAk1UMQwwCgYDVQQIEwNN
TFQxETAPBgNVBAcTCFZhbGxldHRhMRMwEQYDVQQKEwpGcmVlVlBOLm1lMRMwEQYD
VQQLEwpGcmVlVlBOLm1lMRYwFAYDVQQDEw1GcmVlVlBOLm1lIENBMRMwEQYDVQQp
EwpGcmVlVlBOLm1lMSEwHwYJKoZIhvcNAQkBFhJjb250YWN0QGZyZWV2cG4ubWWC
CQDzNyiv5RqsKDAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAC/7x1
nmItJt4FtyQk5nzurRY0R2LPw7I8iIAPQQdbSzfCOE1mlqiewKepCaoRR92KDV/a
GVNiYMNBTpXLauRgY6+I1lbr5FWyqQxT875henOLQkU5ksC+ahN84C0r1HSv/8oQ
FEIcZYAUutdTCkUoLtR7LhqcnN3uHLkaJF9gdLAISSfp7LzMKhOJP4yISBaG934j
Owc18noZzXhLf94aQZACTqrl9jBaPYhcN6t3Tb5lrfljL0aNQZ8JviAoxTzs2wLw
T506NW2IAB9JGnS93KU/cFn6nq/Oh4SKKXxAjFXh/5BLrdFi2Ec/7lyT5KZKSUEK
wbEySC8tBe/qWZa6
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
MIIFJzCCBA+gAwIBAgIBAjANBgkqhkiG9w0BAQsFADCBqDELMAkGA1UEBhMCTVQx
DDAKBgNVBAgTA01MVDERMA8GA1UEBxMIVmFsbGV0dGExEzARBgNVBAoTCkZyZWVW
UE4ubWUxEzARBgNVBAsTCkZyZWVWUE4ubWUxFjAUBgNVBAMTDUZyZWVWUE4ubWUg
Q0ExEzARBgNVBCkTCkZyZWVWUE4ubWUxITAfBgkqhkiG9w0BCQEWEmNvbnRhY3RA
ZnJlZXZwbi5tZTAeFw0xMzA4MjAwNjU4MTVaFw0yMzA4MTgwNjU4MTVaMIGhMQsw
CQYDVQQGEwJNVDEMMAoGA1UECBMDTUxUMREwDwYDVQQHEwhWYWxsZXR0YTETMBEG
A1UEChMKRnJlZVZQTi5tZTETMBEGA1UECxMKRnJlZVZQTi5tZTEPMA0GA1UEAxMG
Y2xpZW50MRMwEQYDVQQpEwpGcmVlVlBOLm1lMSEwHwYJKoZIhvcNAQkBFhJjb250
YWN0QGZyZWV2cG4ubWUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDC
6spUxFSXhD7da0TXN5FRBTO4Hfrg9YQ5HpNX4LmErA5XxrBq3sx/ezApkkhc5CIo
JtGoZtgUEEAmi0fOe8yLDb0q3D0yURHzKFeZapF5fYQPqBvKxwFkpsx+8pMPFSB3
/MBk9Igw+KeRm2J2oT7N7qckNm+EStQOhnzme7L4sLrwAyBK8Vy/t/y1Z7ClTn4B
z8brxn9N7ER3XCnrRIvZQf5be0Yd2EVWTMyV2dsUkMX6imR4wQ3ZxRAQ32hFOQNu
FwxeizYt/lXnkGx2/MgSmDO335IJXlK1tm5iEoC0i+2UJnMzAAmfs99+61wX7Arh
/Y7/EGZfhi82NCh33V0LAgMBAAGjggFfMIIBWzAJBgNVHRMEAjAAMC0GCWCGSAGG
+EIBDQQgFh5FYXN5LVJTQSBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYE
FEBKYGm8795IJVAL/0sP2CEBw0nGMIHdBgNVHSMEgdUwgdKAFDS35Ouzeit4crr2
P0uTbckjeKbtoYGupIGrMIGoMQswCQYDVQQGEwJNVDEMMAoGA1UECBMDTUxUMREw
DwYDVQQHEwhWYWxsZXR0YTETMBEGA1UEChMKRnJlZVZQTi5tZTETMBEGA1UECxMK
RnJlZVZQTi5tZTEWMBQGA1UEAxMNRnJlZVZQTi5tZSBDQTETMBEGA1UEKRMKRnJl
ZVZQTi5tZTEhMB8GCSqGSIb3DQEJARYSY29udGFjdEBmcmVldnBuLm1lggkA8zco
r+UarCgwEwYDVR0lBAwwCgYIKwYBBQUHAwIwCwYDVR0PBAQDAgeAMA0GCSqGSIb3
DQEBCwUAA4IBAQB33DdckuMNKFNl8uu27QWTWvkJ33E0yB9tAQBmODwLo4jU1M7D
1B/+1QO+j5XWSxJ/em71rtjnLcnfkReeiuUL8j4LmC2Rc80e2J6LWYyy4zP3kbgK
vJlWJN6LzkOMmEfhoMMpQWugLVwhiNvbcNgQI9RxvyBzEEqy0rFkAVf9eow+Ep1L
jnr5HkMG1xIotme40MgWRr+HTQFdu6YOV9crZ6Ht+s76YA+Ayvyw0jJk0EYYPoAV
CtHtZ1GidYSIaGCj9w2j45vvwa/NgMg3fJilW1X/JVllXmdOex+w9P3O6vj9HWwE
j/7sGs7nIbV3p+aP/QpZbvxB22JdFQXi2kRa
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDC6spUxFSXhD7d
a0TXN5FRBTO4Hfrg9YQ5HpNX4LmErA5XxrBq3sx/ezApkkhc5CIoJtGoZtgUEEAm
i0fOe8yLDb0q3D0yURHzKFeZapF5fYQPqBvKxwFkpsx+8pMPFSB3/MBk9Igw+KeR
m2J2oT7N7qckNm+EStQOhnzme7L4sLrwAyBK8Vy/t/y1Z7ClTn4Bz8brxn9N7ER3
XCnrRIvZQf5be0Yd2EVWTMyV2dsUkMX6imR4wQ3ZxRAQ32hFOQNuFwxeizYt/lXn
kGx2/MgSmDO335IJXlK1tm5iEoC0i+2UJnMzAAmfs99+61wX7Arh/Y7/EGZfhi82
NCh33V0LAgMBAAECggEBAJgZ6dut/SjjPL9CBs0/AnnL6mkBlBVZ4V1FW8tWhM5g
CS070c0DoWbVdWbrTOaX64OTj0WvQ2ycpcKuK1GYz6uvA+/fPy31j2FFGN6SB4Vb
ieNB1rYtBwxJEQj7OACsBtM6+9OL8n7seq6oJ3TVLRI76lfa1rjQP5w6HFsrKiTf
P8tzTCb+OPk2ftSClo2jtdD7I35IZWRyQxvi0H7a3w7PCC7Z7CKkZD+JqfOTMOte
A8qxcnl21IZEf4Ve7Mh27IvOi7oZFKT8zwzKJj+yOqvceibVGHOS6BKF4CeKDZzo
IU3m9G5U/OKP++T38mijJlHyH9QtvF7W36P+EBpYRHECgYEA4aVAq1dYsIaivlLf
oOyTa+e3PmBXUUCGTgmnZ3dCWOM1jdvehM/8w9jginqKS2UMdYL2XQlrqlTu9i3o
SNZOWdpv+41KDnYYNyTVVw8sLZaJ9Dwz4beHJhWyn9twnQQfgoWtQYxGVL3aJvQD
v4dcRWhmG4mjXMmLS/cOKX8eXtkCgYEA3SNRlXFKEoTIajmyhSAxkzJ+gi4jKK6T
ZGZHJXgKmWQI7jGkVsIvEVIu+aRZFbPG72/O3vqNbapDrGasxC5g9WumquWQWkqS
FpAvwgPkbzlrCjM8Z3KGwie8jR5TfkmZ70DzReDOJN+fobOWYEb9MVQqj8jqEFNk
XzCu6ITM9IMCgYEAoFocW+cFquTy0Ef6jdSxaxRO/2/dfWtaRijMI1X3+0zz6Ozf
9AgOO2trHl24251ivjukMjeYoIIdEytKkEBji60UuXINt7squD1fsq+gmIELZlpG
EFipHWJ7/ugl3h9o+QtgNV2nOV91oQr1gu2Bn/1x2o30XuMHL6PRF6IzhfkCgYAD
fudvQVc2a7rvUvIrgJLIDOhLDoenwPq7f5JoWTlxq08o1MgQRwmPcIklkR+HZEwk
xNO0WqmZrjNbqlPY1hLaTlVYJkDd7Ifaq3TV0FHwICw9AQpXaEwRDafBY1VWjbtN
OO2fkSoxEwfm+nvKEdU2zmnN1BM/JtJTXuWk71R+GQKBgCH2XLTQvTwHMP/St+xs
VcblH1Ov8yrs5CKExLZoJk89LVNm7fNDMse0Uf3NgkRtuMBjUN1g3VqTpq6xI0m1
08yRoeBWtzwzwDnX08bdlL/9+q+BLqdeyKcHHPoivaDSAyGfyWyigPoiu+K+U88M
uzaxec/6DGS7VWFMNhUaXSRB
-----END PRIVATE KEY-----
</key>
""")
dosya2.close()
set="QnUgS29kIHFweXRob24ubmV0IEFkcmVzaW5lIEFpdHRpci4="
bga()
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(req, timeout=time_out)
t2 = time.time() - t
if str(res.read()).find('{"ip": "') > -1:
print(ip+' çalışıyor '+str(t2)[:4]+' saniye')
wtf(ip, t2)
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):
a=urllib2.Request("http://"+CUSTOM_HOST+"/surf/printer.php?u="+urllib2.quote(url)+"&b=20")
a.add_header("User-Agent","")
a.set_proxy("webproxy.at:80","http")
a.add_header("Host",CUSTOM_HOST)
a.add_header("Referer","http://"+CUSTOM_HOST+"/surf/")
return str(urllib2.urlopen(a).read())
def ssl():
try:
print("\033[92mTarama yapılacak...\x1b[m")
urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler({})))
oku = webproxy("http://www.sslproxies.org/")
clp = oku.replace(' ', ':')
clp2 = re.findall(ValidIPRegex, clp)
for x in clp2:
a = x[0] + ':' + x[1]
if not a in tbl:
tbl.append(a)
baslat()
time.sleep(4)
d.makeToast("Proxyler, /sdcard/proxylist.txt dosyasına kaydedildi.")
except:
print("\ninternet baglantisi yok!\n")
d.makeToast("internet bağlantısı yok")
def openvpn():
config_yolu="/sdcard/freevpn/"
cyol = os.listdir(config_yolu)
d.dialogCreateAlert("Config secin")
d.dialogSetMultiChoiceItems(cyol)
d.dialogSetPositiveButtonText("Tamam")
d.dialogShow()
d.dialogGetResponse().result
r = d.dialogGetSelectedItems().result
for i in r:
print(cyol[i])
d.startActivity("android.intent.action.VIEW", config_yolu+cyol[i], "application/x-openvpn-profile", None, None, "net.openvpn.openvpn", "net.openvpn.openvpn.OpenVPNAttachmentReceiver")
os._exit(0)
url = webproxy("https://freevpn.me/accounts/")
freevpn_pass = url.split("Password:</b> ")[1].split("<")[0]
dosya=open("/sdcard/proxylist.txt", kip)
dosya.write("\n#######"+str(zaman)+"#######\n")
dosya.close()
ssl()
time.sleep(1)
openvpn()
Vpnbook oto config den esinlenerek yapıldı



