Onaylı Üye
import requests #Requests Modülünü İmport Ettik
from bs4 import BeautifulSoup #Bs4 İçindeki BeautifulSoup Modülünü İmport Ettik
from random import choice #Random İçindeki Choice Modülünü İmport Ettik
def GetProxy():
Url = "https://sslproxies.org" #Proxy Çekeceğimiz Siteyi Belirledik
R = requests.get(Url) #Reqeusts Modülü Sayesinde Sitenin HTML Kodunu Çektik
Soup = BeautifulSoup(R.content, "html5lib") #Çektiğimiz HTML`i BeautifulSoup İle html5lib Formatında Okuttuk
return {"https": choice(list(map(lambda x: x[0]+":"+x[1], list(zip(map(lambda x: x.text, Soup.find_all("td")[::8]), map(lambda x: x.text, Soup.find_all("td")[1::8]))))))}
#İlk Olarak Proxymizi Kullanabilmek İçin {"https"} Yazdık Sonsrasında ":" Bunu Koymamızın Sebebi Bunun Karşısına İp Ve Portu Atayabilmemiz İçin Koyduk.
#choice Kulandık Çünkü Siteden Proxyleri Çektiğimiz Zaman Birsürü Proxy Ve Oluyordu.
#list Fonksiyonu Mesela 192.168.1.1 İ Düşünün Ve Birsürü Bu Şekilde İp Olduğnu Düşünün Bunları ["Proxy1","Proxy2","Proxy"] Gibi Düşünün Bu Şekilde Ayırmamıza İşeyarıyor.
#zip Fonksiyonu İse 2 Stringin İndexlerini Eşleştirmemize İşeyarıyor.
#map Fonksiyonu İse Şu Şekilde map(Komut, Yazı) Şeklinde Çalşıyor.
#lambda Fonksiyonu For Döngüsüdür
#map(lambda x: x[0]+":"+x[1], ...) Burada Çektiğimiz Proxylerin Ve Portların Arasına ":" Koymamızı Sağlıyor.Örnek>> 192.168.1.1:8080
#map(lambda x: x.text, Soup.find_all("td")[::8]) Burada İse map Fonksiyonu İçerisinde lambda Fonksiyonunu Kullandık x`leri texte çevir dedik ve Soupumuza HTMl Kodundaki "td"leri bulmasını söyledik.
#[::8] Burada İse "td"ler 8 er 8er gittiği için ve tdnin 0. indexinde ip olduğu için 0. indexden başlayıp 8 er 8 er gitmesini söyledik.
#map(lambda x: x.text, Soup.find_all("td")[1::8] Burada İse Aynı Şekilde lambda ile x`leri texte çevirip Soupumuza HTMl Kodundaki "td"leri bulmasını söyledik.
#[1::8] Burada İse 1.İndexden Başlayıp 8 er 8 er gitmesini Söyledik Çünkü 0. indexde ipler 1. indexde ise portlar var
#ve en sonunda zip fonksiyonu ile bunları eşleştirdik.
print(GetProxy())
def UseProxy(Url): #UseProxy Diye Bir Fonskiyon Oluşturduk ve İçerisine Url Diye Bir Değişken Atadık.
while True: #While True Kullanmamızın Sebebi Proxye Bağlananakadar Denemesi İçin While True Kullandık.
try: #proxye bağlanamassak hata aldığımız zaman program kapanmasın diye tryı kullandık
Proxy = GetProxy() # Proxy`i İnternetten Çektiğimiz Proxyi Almasını Söyledik.
R = requests.get(Url, proxies=Proxy,timeout=5) #Burada Requests Modulu İle Belirleyeceğimiz Urlye Gitmesini Sonrasında Çektiğimiz Proxyi Kullanmasını Ve Timeot İlede Proxynin 5 saniye bağlanmasa başka proxye geçeceğini söyledik.
if R.status_code == 200: #proxye bağlandı ama siteye girdiyse yani status kodu 200 ise tamalandığını öğreneceğiz.
print("[+] Proxy Connect >> "+str(Proxy)) #Proxy Bağlandı Dedik Ve Proxyi Bastırdık. str kullanmamızın sebebi ise Proxy string bir değişken olamamsıdır ve bunu stringe çevirmesi için bastırdık ve bunu
break # burada ise siteye bağndığı için artık programı durdurmasını söyledik
else:
print("[-] Connected To Proxy But Site İs Not Opened>> "+str(Proxy)) #Proxye Bağlandı Fakat Siteye Giremediğini Söyledik ve Proxyi bastırdık
except:
print("[-] Proxy Not Connect>> "+str(Proxy)) #Proxye Bağlanamdığını ve proxyi bastırdık
pass #aslında bunun amacı geç analamdında kullanmasakda olur fakat ginede kullandım
Link = input("[+] Link>> ") #Kullanıcıdan Link İstedik
UseProxy(Link)
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?