skeww
Bronz Üye
- Katılım
- 19 Aralık 2020
- Mesajlar
- 95
- Tepkime puanı
- 255
- İlgi Alanlarınız
- Python
- Cinsiyet
-
- Erkek
Not : Proje a dan z ye bana aittir alıp onunmuş gibi başka forumlarda paylaşanların annelerinin odasını basarım ona göre
-------------------------------------------------------------------------------------------------------------------------
.exe olarak paylaşmak istemiştim ama virüstotale python dosyalarında backdoor ve trojen algılıyor
tabi admin abiler sorun olarak görmez ise exe halinide paylaşabilirim her pc de çalıştırılıp kullanılabilinir şekilde
-------------------------------------------------------------------------------------------------------------------------
--------------------------------
İndirilmesi Gereken Modüller;
1- tkinter
2- bs4
3- requests
--------------------------------
--------------------------------------------------------------------------------------------------------------------------------
Buttonlar Ve işlevleri;
Start Buttonu : Proxyleri çekip karşınıza getirir
Save Buttonu : Çekilen proxyleri .txt dosyasına kaydetmeye yarar içerisinde bir şey var ise siler ve proxyleri kaydeder
Add Buttonu : Çekilen proxyleri .txt dosyasına eklemeye yarar içerisinde bir şey var ise silmez üstüne ekler
Clear Buttonu : Çekilen proxyleri siler
Exit Buttonu : Uygulamayı kapatır
--------------------------------------------------------------------------------------------------------------------------------
Sorunsuz Çalıştığına Dair Kanıtlar;
1- https://hizliresim.com/3g0juz
2- https://hizliresim.com/oetxid
3- https://hizliresim.com/k81x95
Kodlar;
-------------------------------------------------------------------------------------------------------------------------
.exe olarak paylaşmak istemiştim ama virüstotale python dosyalarında backdoor ve trojen algılıyor
tabi admin abiler sorun olarak görmez ise exe halinide paylaşabilirim her pc de çalıştırılıp kullanılabilinir şekilde
-------------------------------------------------------------------------------------------------------------------------
--------------------------------
İndirilmesi Gereken Modüller;
1- tkinter
2- bs4
3- requests
--------------------------------
--------------------------------------------------------------------------------------------------------------------------------
Buttonlar Ve işlevleri;
Start Buttonu : Proxyleri çekip karşınıza getirir
Save Buttonu : Çekilen proxyleri .txt dosyasına kaydetmeye yarar içerisinde bir şey var ise siler ve proxyleri kaydeder
Add Buttonu : Çekilen proxyleri .txt dosyasına eklemeye yarar içerisinde bir şey var ise silmez üstüne ekler
Clear Buttonu : Çekilen proxyleri siler
Exit Buttonu : Uygulamayı kapatır
--------------------------------------------------------------------------------------------------------------------------------
Sorunsuz Çalıştığına Dair Kanıtlar;
1- https://hizliresim.com/3g0juz
2- https://hizliresim.com/oetxid
3- https://hizliresim.com/k81x95
Kodlar;
Python:
from tkinter import *
from tkinter import ttk
from tkinter import filedialog
from tkinter import messagebox
from bs4 import BeautifulSoup
import requests
class Root(Tk):
def __init__(self):
self.cout = 1
super(Root, self).__init__()
self.widgets()
def widgets(self):
main_frame = Frame(self)
main_frame.pack(side=TOP, expand=True, fill=BOTH)
# hood
label = Label(main_frame)
label.configure(text="Proxy V1", font="Times 15", fg="red")
label.grid(row=0, column=0, padx=150)
# choosing proxy type
proxies = ["Http/s", "SOCKS4/SOCKS5", "All"]
self.proxies_value = StringVar()
combo_box = ttk.Combobox(main_frame, textvariable=self.proxies_value, values=proxies, state="readonly")
combo_box.grid(row=2, column=0, sticky=N, padx=1)
# proxy self.list_box
self.list_box = Listbox(main_frame, width=37, height=15, selectmode=MULTIPLE)
self.list_box.insert(0, "Proxy List")
self.list_box.grid(row=3, column=0, sticky=N, padx=82)
# skeww label
label = Label(main_frame, text="Coded By Skeww!", fg="red")
label.place(x=148, y=355)
# start button
button_start = ttk.Button(main_frame, text="Start", command=self.start)
button_start.place(x=82, y=293)
# save button
button_save = ttk.Button(main_frame, text="Save", command=self.save)
button_save.place(x=158, y=293)
# add button
button_add = ttk.Button(main_frame, text="Add", command=self.add)
button_add.place(x=234, y=293)
# clear button
button_clear = ttk.Button(main_frame, text="Clear", command=lambda : self.list_box.delete(0, END))
button_clear.place(x=82, y=319)
# exit button
button_exit = ttk.Button(main_frame, text="Exit", command=lambda: self.destroy())
button_exit.place(x=234, y=319)
def http_requests_1(self, proxy_type_):
http_s_proxies = []
socks_4_5_proxies = []
all_proxies = []
url = "https://www.proxyscan.io/"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
tbody = soup.find("tbody", id="loadPage").find_all("tr")
for i in tbody:
try:
proxy = i.find("th", scope="row").text
proxy_type = i.find("td").next_sibling.next_sibling.next_sibling.next_sibling.next_sibling.next_sibling
proxy_port = i.find("td").text
self.cout += 1
if proxy_type.text.strip() == "HTTP" or proxy_type.text.strip() == "HTTPS":
http_s_proxies.append(proxy + ":" + proxy_port)
all_proxies.append(proxy + ":" + proxy_port)
if proxy_type.text.strip() == "SOCKS4" or proxy_type.text.strip() == "SOCKS5" or \
proxy_type.text.strip() == "SOCKS5,SOCKS4":
socks_4_5_proxies.append(proxy + ":" + proxy_port)
all_proxies.append(proxy + ":" + proxy_port)
except Exception:
pass
if proxy_type_ == "Http/s":
return http_s_proxies
if proxy_type_ == "SOCKS4/SOCKS5":
return socks_4_5_proxies
if proxy_type_ == "All":
return all_proxies
def http_requests_2(self):
url = "https://free-proxy-list.net/"
response = requests.get(url)
soup = BeautifulSoup(response.content, "html.parser")
http_s_proxies = []
for i in soup.find_all("tr")[:80]:
try:
data = i.find_all("td")
proxy = data[0].text
port = data[1].text
self.cout += 1
http_s_proxies.append(proxy + ":" + port)
except Exception as s:
pass
def http_requests_3(self):
url = "https://www.sslproxies.org/"
response = requests.get(url)
soup = BeautifulSoup(response.content, "html.parser")
http_s_proxies = []
for i in soup.find_all("tr")[:80]:
try:
data = i.find_all("td")
proxy = data[0].text
port = data[1].text
self.cout += 1
http_s_proxies.append(proxy + ":" + port)
except Exception as s:
pass
return http_s_proxies
def start(self):
cout = 1
proxy_list_http_s = []
proxy_list_stocks = []
proxy_list_all = []
if self.proxies_value.get() == "Http/s":
self.list_box.delete(0, END)
proxy_list_http_s.append(self.http_requests_1("Http/s"))
proxy_list_http_s.append(self.http_requests_2())
proxy_list_http_s.append(self.http_requests_3())
for proxy in proxy_list_http_s:
if proxy is not None:
for proxy_ in proxy:
self.list_box.insert(cout, proxy_)
cout += 1
elif self.proxies_value.get() == "SOCKS4/SOCKS5":
self.list_box.delete(0, END)
proxy_list_stocks.append(self.http_requests_1("SOCKS4/SOCKS5"))
for proxy in proxy_list_stocks:
if proxy is not None:
for proxy_ in proxy:
self.list_box.insert(cout, proxy_)
cout += 1
elif self.proxies_value.get() == "All":
self.list_box.delete(0, END)
proxy_list_all.append(self.http_requests_1("All"))
proxy_list_all.append(self.http_requests_2())
proxy_list_all.append(self.http_requests_3())
for proxy in proxy_list_all:
if proxy is not None:
for proxy_ in proxy:
self.list_box.insert(cout, proxy_)
cout += 1
else:
warning = messagebox.showwarning("Warning", "Please Select Proxy Type!", icon="warning")
def save(self):
try:
self.list_box.select_set(0, END)
result = filedialog.asksaveasfile(mode="w", defaultextension=".txt")
if result is None:
return
selected_item = self.list_box.curselection()
for i in selected_item:
result.write(f"{self.list_box.get(i)}\n")
result.close()
except Exception:
pass
else:
messagebox.showinfo("Info", "Data Saved")
def add(self):
try:
self.list_box.select_set(0, END)
result = filedialog.asksaveasfile(mode="a", defaultextension=".txt")
if result is None:
return
selected_item = self.list_box.curselection()
for i in selected_item:
result.write(f"{self.list_box.get(i)}\n")
result.close()
except Exception:
pass
else:
messagebox.showinfo("Info", "Data Added")
if __name__ == '__main__':
root = Root()
root.title("Proxy V1")
root.geometry("388x378+400+100")
root.resizable(False, False)
root.mainloop()