📌 عنوان برنامه: برنامه‌ای بنویسید که از کاربر، یک گذرواژه (Password) دریافت نماید؟

🛑 نکته: این برنامه با پنج راه‌حل مختلف نوشته شده است!

راه‌حل اول: یک prompt دلخواه نمایش داده شده، ولی گذرواژه کاملا به کاربر نمایش داده می‌شود!

راه‌حل دوم:
یک prompt مشخص (از پیش تعریف شده) نمایش داده شده و گذرواژه به صورت حرف ستاره (*) نمایش داده می‌شود.

راه‌حل سوم: یک prompt دلخواه نمایش داده شده و گذرواژه ستاره است.

راه‌حل چهارم: یک prompt دلخواه نمایش داده شده و گذرواژه به صورت حرف ایکس بزرگ (X) نمایش داده می‌شود.

راه‌حل پنجم: یک prompt دلخواه نمایش داده شده و گذرواژه مطلقا به کاربر نمایش داده نمی‌شود!

# **************************************************
# *** Solution (1) *********************************
# **************************************************
password = input("What is your password: ")
print(password)
# **************************************************

# **************************************************
# *** Solution (2) *********************************
# **************************************************
# pip install stdiomask
# **************************************************
import stdiomask

password = stdiomask.getpass()
print(password)
# **************************************************

# **************************************************
# *** Solution (3) *********************************
# **************************************************
import stdiomask

password = stdiomask.getpass(prompt="What is your password: ")
print(password)
# **************************************************

# **************************************************
# *** Solution (4) *********************************
# **************************************************
import stdiomask

password = stdiomask.getpass(prompt="What is your password: ", mask="X")
print(password)
# **************************************************

# **************************************************
# *** Solution (5) *********************************
# **************************************************
import stdiomask

password = stdiomask.getpass(prompt="What is your password: ", mask="")
print(password)
# **************************************************

#SourceCode #SourceCode10005
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍41
📌 عنوان برنامه: برنامه‌ای بنویسید که اگر در هر پنجره ویندوز، دکمه‌ای از کیبورد (Keyboard) را بفشاریم، کاراکتر مذکور، بر روی صفحه نمایش چاپ شود؟

# **************************************************
# pip install pynput
# https://github.com/moses-palmer/pynput
# **************************************************
from pynput import keyboard


def on_key_press_callback(key):
print(key)


with keyboard.Listener(on_press=on_key_press_callback) as listener:
listener.join()
# **************************************************

#SourceCode #SourceCode10006
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍31
📌 عنوان برنامه: برنامه‌ای بنویسید که اگر در هر پنجره ویندوز، دکمه F10 کیبورد (Keyboard) را بفشاریم، عبارت "!Hello, World" بر روی صفحه نمایش چاپ شود؟

# **************************************************
# pip install pynput
# **************************************************
from pynput import keyboard


def on_press(key):
if key == keyboard.Key.f10:
print("Hello, World!")


with keyboard.Listener(on_press=on_press) as listener:
listener.join()
# **************************************************

#SourceCode #SourceCode10007
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍31
📌 عنوان برنامه: برنامه‌ای بنویسید که اگر در هر پنجره ویندوز، دکمه‌های ترکیبی CTRL+ALT+P را بزنیم، عبارت "!Hello, World" را چاپ کرده و اگر دکمه‌های ترکیبی CTRL+ALT+Q را بفشاریم، از برنامه خارج شود؟

# **************************************************
from pynput import keyboard


def on_ctrl_alt_q():
print("Have a nice time...")
exit()


def on_ctrl_alt_p():
print("Hello, World!")


with keyboard.GlobalHotKeys(
{
"<ctrl>+<alt>+q": on_ctrl_alt_q,
"<ctrl>+<alt>+p": on_ctrl_alt_p,
}
) as listener:
listener.join()
# **************************************************

#SourceCode #SourceCode10008
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍31
📌 عنوان برنامه: برنامه‌ای بنویسید که یک فایل (مثلا به نام file.txt) ایجاد کرده، متن یا متون خود را در داخل آن نوشته (Write) و سپس فایل را بسته و ذخیره نماییم؟

نکته: در صورتی که از Mode ای به نام "w"‌ استفاده نماییم، در صورتی که فایل وجود نداشته باشد، فایل ایجاد شده و در صورتی که وجود داشته باشد Overwrite می‌شود.

نکته: در صورتی که از Mode ای به نام "a"‌ استفاده نماییم، در صورتی که فایل وجود نداشته باشد، فایل ایجاد شده و در صورتی که وجود داشته باشد Append می‌شود.

نکته: به عبارت n\ که در انتهای متون نوشته شده است، کاملا دقت نمایید! سیستم به طور هوشمند بسته به این‌که سیستم‌عامل شما ویندوز (r\n\) باشد و یا لینوکس/مک، جداکننده خطوط را به درستی قرار می‌دهد!

نکته: راه‌حل دوم، مدرن‌تر و هوشمندانه‌تر بوده و نیازی به نوشتن دستور close ندارد!

# **************************************************
# *** Solution (1) *********************************
# **************************************************
file = open(file="file.txt", mode="w", encoding="utf-8")

file.write("Hello, World (1)!\n")
file.write("Hello, World (2)!\n")
file.write("Hello, World (3)!\n")
file.write("Hello, World (4)!\n")
file.write("Hello, World (5)!\n")

# Note: Python will convert \n to os.linesep

file.close()
# **************************************************

# **************************************************
# *** Solution (2) *********************************
# **************************************************
with open(file="file.txt", mode="w", encoding="utf-8") as file:
file.write("Hello, World (1)!\n")
file.write("Hello, World (2)!\n")
file.write("Hello, World (3)!\n")
file.write("Hello, World (4)!\n")
file.write("Hello, World (5)!\n")

# Note: به دستور ذیل نیازی نیست
# file.close()
# **************************************************

#SourceCode #SourceCode10009
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍31
📌 عنوان برنامه: برنامه‌ای بنویسید که اگر در هر پنجره ویندوز، دکمه‌های ترکیبی CTRL+ALT+P را بزنیم، از صفحه نمایش (First / Main Monitor)، یک عکس گرفته و با توجه به تاریخ و زمان، آن عکس را در داخل پوشه‌ای به نام ScreenShots ذخیره نماید و اگر دکمه‌های ترکیبی CTRL+ALT+Q را بفشاریم، از برنامه خارج شود؟

# **************************************************
# pip install pynput
# pip install PyAutoGUI
# **************************************************
import os, pyautogui
from pynput import keyboard
from datetime import datetime

path = "ScreenShots"

if os.path.exists(path=path) == False:
os.mkdir(path=path)


def on_ctrl_alt_q():
print("Have a nice time...")
exit()


def on_ctrl_alt_p():
screenshot = pyautogui.screenshot()
now = datetime.now()
formated_now = now.strftime("%Y_%m_%d_%H_%M_%S")
path_name = f"{path}\\screenshot_{formated_now}.png"
screenshot.save(fp=path_name)


with keyboard.GlobalHotKeys(
{
"<ctrl>+<alt>+q": on_ctrl_alt_q,
"<ctrl>+<alt>+p": on_ctrl_alt_p,
}
) as listener:
listener.join()
# **************************************************

#SourceCode #SourceCode10010
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍31
📌 عنوان برنامه: برنامه‌ای بنویسید که اگر در هر پنجره ویندوز، دکمه‌های را بزنیم، در فایلی به نام keys.log آن‌را ذخیره نماید؟

# **************************************************
# pip install pynput
# **************************************************
from pynput import keyboard
from datetime import datetime

filename = "keys"


def on_press(key):
now = datetime.now()
formated_now = now.strftime("%Y_%m_%d")
pathname = f"{filename}_{formated_now}.log"
with open(file=pathname, mode="a", encoding="utf-8") as file:
try:
if hasattr(key, "char"):
file.write(key.char)
elif key == keyboard.Key.enter:
file.write("[ENTER]\n")
elif key == keyboard.Key.space:
file.write(" ")

elif key == keyboard.Key.esc:
file.write("[ESCAPE]")
elif key == keyboard.Key.delete:
file.write("[DELETE]")
elif key == keyboard.Key.backspace:
file.write("[BACKSPACE]")

elif key == keyboard.Key.end:
file.write("[END]")
elif key == keyboard.Key.home:
file.write("[HOME]")

elif key == keyboard.Key.up:
file.write("[UP]")
elif key == keyboard.Key.down:
file.write("[DOWN]")
elif key == keyboard.Key.left:
file.write("[LEFT]")
elif key == keyboard.Key.right:
file.write("[RIGHT]")

elif key == keyboard.Key.page_up:
file.write("[PAGE_UP]")
elif key == keyboard.Key.page_down:
file.write("[PAGE_DOWN]")
except:
pass


with keyboard.Listener(on_press=on_press) as listener:
listener.join()
# **************************************************

#SourceCode #SourceCode10011
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍21
📌 عنوان برنامه: برنامه‌ای بنویسید که برای یک نشانی URL (سایت)، یک QR Code ایجاد نماید؟

نکته: راه‌حل اول و دوم تقریبا مشابه هم بوده، ولی راه‌حل سوم، کمی امکانات بیشتری، مانند تغییر رنگ متن، رنگ قلم، اندازه و غیره در اختیار ما قرار می‌دهد!

# **************************************************
# pip install qrcode
# https://github.com/lincolnloop/python-qrcode
# **************************************************

# **************************************************
# *** Solution (1) *********************************
# **************************************************
import qrcode

data = "https://IranianExperts.ir"

image = qrcode.make(data=data)
image.save("myqrcode1.png")
# **************************************************

# **************************************************
# *** Solution (2) *********************************
# **************************************************
import qrcode as qr

data = "https://IranianExperts.ir"

image = qr.make(data=data)
image.save("myqrcode2.png")
# **************************************************

# **************************************************
# *** Solution (3) *********************************
# **************************************************
import qrcode

qr = qrcode.QRCode(
border=4,
version=1,
box_size=20,
error_correction=qrcode.constants.ERROR_CORRECT_H,
)

data = "https://IranianExperts.ir"

qr.add_data(data)
qr.make(fit=True)
image = qr.make_image(fill_color="red", back_color="yellow")
image.save("myqrcode3.png")
# **************************************************

#SourceCode #SourceCode10012
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
4👍3
معرفی سایت

- سایت‌هایی که ابزارهای رایگانی دارند، که می‌توان از طریق آن‌ها Request هایی (GET, POST, PUT, DELETE) را به سایت‌های دیگر ارسال نماییم.

📌 نکته: این فهرست به مرور تکمیل می‌گردد!

https://www.httpdebugger.com/tools

#Site

کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
3
معرفی سایت

- سایت‌هایی که می‌توان به آن‌ها انواع Request ها، مانند GET, POST, PUT, DELETE و غیره را با پارامتر و بدون پارامتر ارسال کرد.

📌 نکته: این فهرست به مرور تکمیل می‌گردد!

https://httpbin.org

#Site

کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
2👍1
📌 عنوان برنامه: برنامه‌ای بنویسید که به صورت GET، درخواستی را به سایتی ارسال کرده و Response (موفقیت‌آمیز بودن یا نبودن) آن‌را به همراه کلیه Header ها نمایش دهد؟

نکته: در سورس‌کد ذیل، items یک Dictionary می‌باشد!

# **************************************************
# pip install requests
# https://github.com/psf/requests
# https://requests.readthedocs.io/en/latest
# **************************************************
import requests

url = "https://IranianExperts.ir"

response = requests.get(url=url)

print(response)
print(response.status_code)
print(response.headers)

for key, value in response.headers.items():
print(f"{key}: {value}")
# **************************************************

#SourceCode #SourceCode10013
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍42
📌 عنوان برنامه: برنامه‌ای بنویسید که بتوانیم از طریق برنامه پایتون، دستورات سیستم‌عامل را اجرا نموده و در صورتی که یکی از دو عبارت exit یا quit را نوشتیم (و اجرا کردیم) از برنامه خارج شود؟

# **************************************************
import os

while True:
command = input("> ")
if command.lower() == "exit" or command.lower() == "quit":
break
else:
os.system(command=command)
# **************************************************

مثال: بعد از اجرای برنامه، دستوراتی مانند cls یا dir و غیره را اجرا کرده و نتیجه را مشاهده نمایید.

#SourceCode #SourceCode10014
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
3👍1
📌 عنوان برنامه: برنامه‌ای بنویسید که بتوانیم از طریق برنامه پایتون، دستورات سیستم‌عامل را اجرا نموده و در صورتی که یکی از دو عبارت exit یا quit را نوشتیم (و اجرا کردیم) از برنامه خارج شود؟

🛑 نکته مهم: در مثال قبل، هر چند که توانستیم دستورات سیستم‌عامل را از طریق برنامه پایتون اجرا نماییم، ولی نتیجه اجرای دستورات، صرفا در صفحه نمایش ظاهر می‌گردید! حال می‌خواهیم برنامه را به گونه‌ای تغییر دهیم که بعد از اجرای هر دستور، نتیجه اجرای دستور، در متغیری مثلا به نام Result ذخیره شده و در صورت نیاز Result را نمایش دهیم. مقدار Result می‌تواند ذخیره شده، ارسال شده و یا ایمیل گردد!

# **************************************************
import subprocess

while True:
command = input("> ")
if command.lower() == "exit" or command.lower() == "quit":
break
else:
result = subprocess.getoutput(cmd=command)
print(result)
# **************************************************

مثال: بعد از اجرای برنامه، دستوراتی مانند dir یا mkdir و غیره را اجرا کرده و نتیجه را مشاهده نمایید.

#SourceCode #SourceCode10015
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
4👍2
📌 عنوان برنامه: برنامه‌ای بنویسید که شناسه‌کاربری (Username)، کاربری که در حال حاضر در سیستم Login کرده است را نمایش دهد؟

نکته: در پایتون، دستورات و Module های متنوعی برای انجام تقریبا هر کاری وجود دارد، ولی باید به عنوان یک حرفه‌ای، از دستوراتی استفاده نماییم که Cross Platform بوده و بر روی هر سیستم‌عاملی، مانند ویندوز، لینوکس و مک کار کند! دو راه‌حلی که در ذیل نوشته شده است، کاملا Cross Platform می‌باشند!

# **************************************************
# *** Solution (1) *********************************
# **************************************************
import os

username = os.getenv(key="USERNAME")
print(username)
# **************************************************

# **************************************************
# *** Solution (2) *********************************
# **************************************************
import getpass

username = getpass.getuser()
print(username)
# **************************************************

#SourceCode #SourceCode10016
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
4👍3
📌 عنوان برنامه: برنامه‌ای بنویسید که سرعت Ping، دانلود و آپلود دستگاه، در زمان اتصال به اینترنت را محاسبه کرده و نمایش دهد؟

نکته: در واقع می‌خواهیم که یک برنامه Internet Speed Test هیجان‌انگیز بنویسیم!

# **************************************************
# pip install speedtest-cli
# https://github.com/sivel/speedtest-cli
# **************************************************
import speedtest

speed_test = speedtest.Speedtest()

speed_test.get_best_server()

print(f"Your ping is: {speed_test.results.ping} ms")

download_speed = round(speed_test.download() / 1000 / 1000, 1)
print(f"Your download speed: {download_speed} Mbit/s")

upload_speed = round(speed_test.upload() / 1000 / 1000, 1)
print(f"Your upload speed: {upload_speed} Mbit/s")
# **************************************************

#SourceCode #SourceCode10017
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
3👍3
📌 عنوان برنامه: برنامه‌ای بنویسید که یک فایل فیلم را دریافت کرده و صدا/موزیک (Audio) فیلم را به صورت جداگانه، از فیلم استخراج کرده و در قالب یک فایل mp3 ذخیره نماید؟

نکته: از این پس می‌توانید Clip هایی که از YouTube و تلگرام و غیره بدست می‌آورید را با این برنامه تبدیل به فایل‌های mp3 نمایید!

نکته: شما عزیزان، یا برنامه‌نویس هستید و یا انشاءالله به زودی، تبدیل به یک برنامه‌نویس خبره خواهید شد، لذا لازم به ذکر است که شما می‌توانید از این کدهای هیجان‌انگیز، ایده گرفته و آن‌ها را به سلیقه خود تکمیل نمایید! مثلا در خصوص این برنامه، می‌توانید به جای آن‌که نام فیلم را به صورت Hard Code در سورس برنامه قرار دهید، آن‌را به صورت ورودی (‌input) از کاربر بگیرید! و یا به عنوان پارامتر ورودی برنامه (args)، آن‌را دریافت نمایید و یا حتی، در زمانی که این فایل (اجرایی) را در داخل پوشه‌ای اجرا می‌کنید، این برنامه با یک حلقه تکرار ساده، تمام فیلم‌هایی که در آن پوشه قرار دارند را پردازش کرده و صدا یا موزیک آن‌ها را استخراج کرده و فایل صدای آن فیلم (mp3) را با همان نام فایل فیلم ایجاد نماید!

# **************************************************
# pip install moviepy
# https://zulko.github.io/moviepy
# **************************************************
from moviepy.editor import *

filename = "MyMovie.mp4"

movie = VideoFileClip(filename=filename)

audio = movie.audio
audio.write_audiofile(filename="MyAudio.mp3")

audio.close()
movie.close()
# **************************************************

#SourceCode #SourceCode10018
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
👍65
📌 عنوان برنامه: برنامه‌ای بنویسید که عملیات TCP Port Scanning را برای یک IP خاص انجام داده و فهرستی از همه Port های باز آن IP را نمایش دهد؟

نکته: در مثال ذیل، زمان Scan برای هر Port، برابر نیم ثانیه (معادل ۵۰۰ میلی‌ثانیه) در نظر گرفته شده است!

نکته: همان‌طور که ملاحظه می‌کنید، اجرای دستورات ذیل، آن‌هم برای صرفا ۱۰۰ پورت اول، خیلی زمان‌گیر است! لذا برای اجرای بهینه‌تر این‌گونه برنامه‌ها، بهتر است که از تکنیک‌های Multi Threading استفاده گردد!

# **************************************************
# Port numbers 0 - 1023 are used for well-known ports.
# Port numbers 1024 - 49151 are reserved for user server applications.
# Port numbers 49152 - 65535 are reserved for clients.
# **************************************************
import socket
from datetime import datetime

ip = "185.55.224.88"
# host = "IranianExperts.ir"

start_time = datetime.now()

# for port in range(0, 65536):
for port in range(0, 100):
try:
address = (ip, port)
client_socket = socket.create_connection(address=address, timeout=0.5)
client_socket.close()

print(f"{port:<6}/tcp: Open")
except:
pass
# except Exception as e:
# print(f"{port:<6}/tcp: An exception occurred: {str(e)}")

finish_time = datetime.now()

duration = finish_time - start_time
print(f"Port Scanning Duration: {duration}")
# **************************************************

#SourceCode #SourceCode10020
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
4👍4
📌 یک برنامه هیجان‌انگیز دیگر! در کانال پایتون!

به بهانه آموزش Python Automaion، امروز می‌خواهیم Telegram Proxy (Socks5) Automation را یاد بگیریم!

همان‌طور که مستحضر هستید، در داخل برنامه تلگرام، می‌توانیم از سه نوع Proxy استفاده نماییم:

- HTTP
- SOCKS5
- MTPROTO

فرض کنید که سایتی وجود دارد (به نشانی ذیل)، که هر چند دقیقه یک‌بار، فهرستی از IP / PORT های مربوط به پروتکل SOCKS را در آن منتشر می‌کند:

https://github.com/hookzof/socks5_list/blob/master/proxy.txt

این‌که بخواهیم به ازای هر IP / PORT، وارد تنظیمات تلگرام شده و اطلاعات IP / PORT را COPY / PASTE کرده و آن‌را تست نماییم، شاید زمان نسبتا زیادی را از ما بگیرد! چرا که ممکن است، بعضی از این IP / PORT ها اساسا اشتباه باشند! یا Service Provider آن‌ها، به کشور ایران سرویس ندهد! یا ایران، IP مذکور را فیلتر کرده باشد! و یا PORT مذکور به صورت موقت / دائم بسته شده باشد! و غیره...

به همین دلیل می‌خواهیم در زمان صرفه‌جویی کرده و کلی از اعمالی که می‌بایست دستی انجام دهیم را به صورت اتوماتیک (Automation) انجام دهیم!

و اما نحوه استفاده از این برنامه:

ابتدا وارد نشانی فوق شده و تمام فهرست IP / PORT های موجود را کپی کرده و در داخل فایلی به نام check_list.txt، کپی می‌کنیم، مثلا:

121.37.201.60:4145
121.37.201.60:4006
117.74.65.207:8017
120.79.21.48:30001
144.91.78.34:49368

سپس برنامه را اجرا می‌کنیم. برنامه به طور اتوماتیک، بررسی می‌کند که کدام‌یک از این IP / PORT ها باز یا بسته هستند! در صورتی که IP / PORT، امکان برقراری ارتباط نداشته باشد، اطلاعات آن‌را در فایلی به نام failure_list.txt و به شکل ذیل ذخیره می‌کند:

117.74.65.207:8017 : timed out
144.91.78.34:49368 : timed out

و اگر IP / PORT، امکان برقراری ارتباط داشته باشد، اطلاعات آن‌را در فایلی به نام success_list.txt و به شکل ذیل ذخیره می‌کند:

1 : https://t.me/socks?server=121.37.201.60&port=4145
2 : https://t.me/socks?server=121.37.201.60&port=4006
3 : https://t.me/socks?server=120.79.21.48&port=30001

حال کافی است که فایل success_list.txt را (بعد از اتمام اجرای برنامه) باز کرده و اطلاعات داخل آن را کپی کرده و در برنامه تلگرام، و مثلا در قسمت Saved Messages، آن‌ها را Paste نموده و سپس بر روی تک تک لینک‌ها کلیک کرده و تایید می‌نماییم، تا برقراری ارتباط با اینترنت، توسط برنامه تلگرام، با پروتکل SOCKS5، صورت پذیرد...

نکته: در ابتدای کار، اعلام کردم که وارد سایت مذکور شده و فهرست IP / PORT ها را کپی کرده و در فایلی به نام check_list.txt، آن‌ها را Paste می‌نماییم، حال آن‌که ما می‌توانیم با استفاده از Package / Module قدرتمندی به نام requests، همین مرحله اولیه را نیز به صورت اتوماتیک انجام دهیم! یعنی برنامه، ابتدا به نشانی مذکور متصل شده، و فایل فهرست IP / PORT ها را دانلود کرده و سپس فایل check_list.txt را خودش ایجاد نموده و سپس مراحل بعد را انجام دهد... این مرحله را به عنوان تمرین، به خود شما بزرگواران محول می‌کنم...

🛑 نکته: قابل توجه برادران ارزشی عزیز و گرامی، مدت‌هاست که پروتکل SOCKS5 در کل کشور مسدود شده و این برنامه، عملا در کشور عزیزمان ایران، کار نمی‌کند! و این سورس‌کد، صرفا جنبه آموزشی داشته و لطفا آن‌را پیراهن عثمان نکنید! سعی کنید از دانش و تجربه من استفاده کرده و لذت ببرید...

برای دریافت سورس‌کد، به کانال پایتون مراجعه نمایید.

#SourceCode #SourceCode10021
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
5👍5
📌 یک برنامه هیجان‌انگیز دیگر! در کانال پایتون!

به بهانه آموزش Python Automaion، امروز می‌خواهیم Telegram Proxy (Socks5) Automation را یاد بگیریم!

نکته: توضیحات این برنامه، در مطلب قبل:
https://t.me/DT_PYTHON_LEARNING/26

# **************************************************
import socket
from datetime import datetime

with open(file="check_List.txt", mode="r") as check_List_file:
check_list_items = check_List_file.readlines()

failure_list_file = open(file="failure_List.txt", mode="a")
success_list_file = open(file="success_List.txt", mode="w")

success_index = 0

for item in check_list_items:
item = item.replace("\r", "").replace("\n", "")
parts = item.split(":")
ip, port = (parts[0], int(parts[1]))

start_time = datetime.now()

print()
try:
address = (ip, port)
client_socket = socket.create_connection(address=address, timeout=1)
client_socket.close()

success_index += 1

url = f"{success_index:<4}: https://t.me/socks?server={ip}&port={port}"
print(url)
success_list_file.write(f"{url}\n")
except Exception as e:
error_message = f"{item:<21}: {str(e)}"
print(error_message)
failure_list_file.write(f"{error_message}\n")

finish_time = datetime.now()

duration = finish_time - start_time
print(f"Port Scanning Duration: {duration}")

failure_list_file.close()
success_list_file.close()
# **************************************************

#SourceCode #SourceCode10021
کانال پایتون:
@DT_PYTHON_LEARNING
ادمین:
@Dariush_Tasdighi
کانال اصلی:
@IranianExperts
.
6👍2
Media is too big
VIEW IN TELEGRAM
💚 سلام دوستان عزیزم - لطفا با هر سطح دانشی که از پایتون دارید، این فیلم را با دقت مشاهده نمایید!

Cheat Sheet

[Install Package]
pip install <package>
python -m pip install <package>
python3 -m pip install <package>

[Create Virtual Environment]
python -m venv venv
python -m venv venv --prompt="venv"

[Activate]
venv\Scripts\activate

[Check PIP]
pip --version

[Update PIP]
python -m pip install --upgrade pip

[List]
pip list

[Install]
python -m pip install <package>

[Display]
pip show <package>

[Update]
python -m pip install --upgrade <package> -y

[Uninstall]
pip uninstall <package> -y

[Freeze]
pip freeze > requirements.txt
cat requirements.txt

[Uninstall All]
pip uninstall -r requirements.txt -y

[Install All]
pip install -r requirements.txt

[Update All]
pip install --upgrade -r requirements.txt

[Deactivate]
(venv) PS> deactivate

#Movie #Python #Learning_Python_001

🆔 @Dariush_Tasdighi
🆔
@IranianExperts
🆔
@DT_PYTHON_LEARNING
.
10👍8