❤️ سلام دوستان عزیزم ❤️

🔴 برای یک برنامه هیجان‌انگیز و کاربردی دیگر، با زبان برنامه‌نویسی پایتون آماده شوید...

شرح برنامه:‌ برنامه‌ای که اطلاعات اکانت Github خودمان و یا شخص دیگری را دریافت کرده، و به طور خودکار، تمام Repository های Fork نشده آن اکانت (Account) را شناسایی کرده، و در ضمن، نام Branch اصلی هر یک از آن Repository ها را استخراج کرده (master / main)، سپس پوشه‌ای به همان نام Account ایجاد نموده، و کلیه سورس‌کدهای هر یک از Repository ها را، در قالب یک فایل ZIP، به زیبایی دانلود می‌کند!

📌 نکته: ضمنا برنامه کاملا هوشمند بوده و اگر مثلا چند هفته و یا چند ماه بعد، مجددا برنامه را برای همان اکانت اجرا نماییم، صرفا Repository های Update شده را دانلود می‌کند!

نکته: به دلیل جذابیت و کاربردی بودن این برنامه، و این‌که به غیر از گرفتن کلی ایده‌های جذاب، کلی از نکات و تکنیک‌های زبان برنامه‌نویسی پایتون را نیز فرا خواهید گرفت و یا برایتان مرور می‌گردد، احتمالا علاوه بر انتشار سورس‌کد، فیلم آموزشی این برنامه نیز تولید و منتشر خواهد شد...

🔴 نکته مهم: قابل توجه شاگردان عزیز و گرامی اینجانب، در کلاس‌های عمومی C# Fundamental و یا Programming in C# 1، و البته دیگر عزیزان: شما از این پس می‌توانید، با استفاده از این برنامه، هر از گاهی، نسبت به دانلود کلیه سورس‌کدهای موجود در اکانت‌های Github اینجانب اقدام نمایید:

https://github.com/dariush-tasdighi
https://github.com/learning-csharp

#SourceCode #SourceCode10037 #Practical #EthicalHacking

🆔 @Dariush_Tasdighi
🆔
@IranianExperts
🆔
@DT_PYTHON_LEARNING
.
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍2
Media is too big
VIEW IN TELEGRAM
❤️ سلام دوستان عزیزم ❤️

شرح برنامه:‌
برنامه‌ای که اطلاعات اکانت Github خودمان و یا شخص دیگری را دریافت کرده، و به طور خودکار، تمام Repository های Fork نشده آن اکانت (Account) را شناسایی کرده، و در ضمن، نام Branch اصلی هر یک از آن Repository ها را استخراج کرده (master / main)، سپس پوشه‌ای به همان نام Account ایجاد نموده، و کلیه سورس‌کدهای هر یک از Repository ها را، در قالب یک فایل ZIP، به زیبایی دانلود می‌کند!

📌 نکته: ضمنا برنامه کاملا هوشمند بوده و اگر مثلا چند هفته و یا چند ماه بعد، مجددا برنامه را برای همان اکانت اجرا نماییم، صرفا Repository های Update شده را دانلود می‌کند!

🔴 نکته: دوستان عزیزم، فارغ از این‌که به زبان برنامه‌نویسی پایتون علاقه دارید یا خیر! و یا دانشی در این خصوص دارید یا خیر! قویا مشاهده این فیلم را به شما توصیه می‌کنم!

https://github.com/dariush-tasdighi
https://github.com/learning-csharp

#Movie #SourceCode #SourceCode10037 #Practical #EthicalHacking

🆔 @Dariush_Tasdighi
🆔
@IranianExperts
🆔
@DT_PYTHON_LEARNING
.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍54
عنوان برنامه:‌ دانلود فایل‌های یک Repository

# ********************
import os, requests

os.system(command="cls")
username = input("What is github account: ").lower()

url = f"https://api.github.com/users/{username}/repos"

try:
response = requests.get(url=url)
except:
print(f"Connection Error!")
quit()

if (
not response
or response.status_code != 200
or response.text == ""
or response.text == "[]"
or "Not Found" in response.text
):
print(f"Repository '{username}' not found or empty!")
quit()

response_json = response.json()

non_fork_list = []

for item in response_json:
if item["fork"] == False:
name = item["name"].upper()
updated_at = item["updated_at"]
default_branch = item["default_branch"]
data = (name, default_branch, updated_at)
non_fork_list.append(data)

non_fork_list.sort()

for index, item in enumerate(non_fork_list):
message = f"[{(index + 1):>3}] - [{item[2]:<20}] - [{item[1]:<10}] - {item[0]}"
print(message)

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

index = 0
for item in non_fork_list:
updated_at = (
item[2].replace(":", "_").replace("-", "_").replace("T", "_").replace("Z", "")
)

file_name = f"{item[0]}_{updated_at}.zip"
path_name = f"{username}\{file_name}"
if os.path.exists(path=path_name):
break

index += 1

url = f"https://github.com/{username}/{item[0]}/archive/refs/heads/{item[1]}.zip"

response = requests.get(url=url, stream=True)
if response.status_code == 200:
with open(file=path_name, mode="wb") as file:
for chunk in response.iter_content(chunk_size=1024):
file.write(chunk)

message = f"[{(index):>3}] - File '{file_name}' downloaded."
print(message)
# ********************

#SourceCode #SourceCode10037 #Practical #EthicalHacking

🆔 @Dariush_Tasdighi
🆔
@IranianExperts
🆔
@DT_PYTHON_LEARNING
.
👍72