uk
Feedback
ערוץ - python tip israel

ערוץ - python tip israel

Відкрити в Telegram

ערוץ מדריכים לפייתון וקוד פתוח

Показати більше
1 792
Підписники
Немає даних24 години
Немає даних7 днів
Немає даних30 днів
Архів дописів
למי שרוצה יצרתי ספרייה בקוד פתוח פשוט להתקין
pip install simple2encrypt

הוספתי תיעוד https://github.com/nhman-python/crypto-utils/wiki

קצת על הצפנות AES 🔐 AES (Advanced Encryption Standard) הוא אלגוריתם הצפנה סימטרי בשימוש נרחב לאבטחת נתונים רגישים. הוא נבחר על ידי המכון הלאומי לתקנים וטכנולוגיה (NIST) בשנת 2001 כתחליף לתקן הצפנת הנתונים הישן יותר (DES). AES נחשב מאובטח ואומץ כאלגוריתם הצפנה סטנדרטי על ידי ארגונים ותעשיות שונות. להלן כמה תכונות ומאפיינים מרכזיים של AES: 1. הצפנה סימטרית: AES הוא אלגוריתם הצפנה סימטרי, כלומר אותו מפתח משמש הן להצפנה והן לפענוח. 2. צופן בלוק: AES פועל על בלוקים של נתונים בגודל קבוע. גודל הבלוק עבור AES הוא 128 סיביות (16 בתים). 3. גדלי מפתח: AES תומך בשלושה גדלי מפתח: 128 סיביות, 192 סיביות ו-256 סיביות. גודל המפתח קובע את החוזק והאבטחה של ההצפנה. 4. מצבי הצפנה: AES תומך במצבי הצפנה שונים, כגון ECB (ספר קוד אלקטרוני), CBC (Cipher Block Chaining), CFB (Cipher Feedback) ועוד. מצבים אלה קובעים כיצד ההצפנה מוחלת על מספר בלוקים של נתונים. 5. רשת Substitution-Permutation: משתמשת במבנה של רשת החלפה-תמורת (SPN). כולל סבבים מרובים של פעולות החלפה ותמורה כדי להשיג בלבול ופיזור סביות ללא שינו בתוכן עצמו, מה שמשפר את האבטחה של האלגוריתם. 6. אבטחה חזקה: AES עברה ניתוח ובדיקה מקיפה על ידי קהילת ההצפנה. הוא נחשב מאובטח מפני סוגים שונים של התקפות, כולל התקפות בכוח גס (Brute Force). בשל האבטחה, היעילות והאימוץ הנרחב שלה, AES נמצא בשימוש נפוץ ביישומים ופרוטוקולים שונים, לרבות אבטחת תקשורת רשת, הגנה על נתונים מאוחסנים, אבטחת רשתות אלחוטיות (WPA2) ועוד.

דוגמא לשימוש

הצפנת מידע הכנתי סקריפט או אם אם תרצו סוג של ספריה שעושה את השימוש בהצפנה cipher AES קלה מאוד לשימוש למי שרוצה הנה הקישור לפרוייקט בגיטהאב אפשר לעשות המון דברים מעניינים כמו הצפנת קבצים טקסט וכו' יש כמה דוגמאות בתוך הקישור הקובץ הראשי נקרא encryption_utils.py והוא גם משמש ליצירת מפתחות הצפנה חדשים פרטים בגיטהאב שלי: https://github.com/nhman-python/crypto-utils

מבוא לפייתון 🐍 פייתון היא שפת תכנות פופולרית ונפוצה שפותחה בשנת 1991 על ידי גידו ואן רוסום. בזכות הפשטות והגמישות בכתיבת הקוד, פייתון זכתה לפופולריות רבה בקרב מתכנתים. היא מתמקדת בכתיבת קוד קריא וקומפקטי, ולכן מתאימה למתכנתים מתחילים ומנוסים כאחד. אחת מיתרונותיה של פייתון היא שהיא שפת תרגום, כלומר, אין צורך להדר את הקוד לפני הרצתו. זה מאפשר פיתוח ובדיקה מהירים יותר משפות אחרות. השפה תומכת במספר פרדיגמות תכנות, כולל פרוצדורלי, עצמאי ותכנות פונקציונלי, ומאפשרת למתכנתים לבחור את הגישה המתאימה להם. פייתון מצוידת בספריה תקנית רחבה המכילה מודולים ופונקציות רבות המסייעות בביצוע משימות התיכנות השונות. נוסף לכך, ישנה  תמיכה קהילתית רחבה של ספריות צד שלישי ומסגרות המספקות פתרונות לתחומים רבים כמו פיתוח אינטרנט, ניתוח נתונים, חישובים מדעיים ולמידת מכונה. פייתון אינה מוגבלת לפיתוח תוכנה בלבד, אלא נמצאת בשימוש רחב גם לכתיבת סקריפטים, אוטומציה וניהול מערכות. היכולות והגמישות שלה מאפשרות יצירת תכניות מהירות והשתלבות נוחה עם שפות ומערכות אחרות. דגש נוסף הוא הקהילה הפעילה של פייתון. מפתחי פייתון מתחילים מרחבי העולם משתתפים בפעילות לשיפור השפה, תוך יצירת ספריות, שיתוף מידע וסיוע דרך פורומים וקהילות מקוונות. הכל על פייתון ניתן למצוא בערוץ @python_tip_israel מבית @TermuxIsrael2 ❤️

כלי חמוד שהכנתי למי שרוצה לשגע crawlers הכלי בעצם מביא קישורים רנדומלים למשל למשתמשים שניראה לכם שמגרדים מידע מהאתר שלכם דוגמא אתרי מכירות וכו... אז במקום להחזיר שגיאה 403 מחזירים את הדף הזה זה פשוט יכניס אותם ללולאה אין סופית של קישורים אפשר לראות פה את הסרטון שעליו בניתי את הקוד https://github.com/nhman-python/crawler_war

קוד מקור לאתר תרגום שכתבתי https://github.com/nhman-python/translate-text

יותר מאוחר יעלה הדרכה איך ליצור אתר לתרגום טקסט חינם בכמה שורות קוד ללא שום API רק HTML ופייתון...

הפיתרון לתרגיל הגדלת מספר
def incrementor():
    filename = 'statistics.log'
    try:
        with open(filename, 'r+') as f:
            update_number = str(int(f.read()) + 1)
            f.seek(0)
            f.write(update_number)
            f.truncate()
            return update_number
    except (ValueError, TypeError, FileNotFoundError):
        with open(filename, 'w') as new:
            new.write('1')
            return '1'

print(incrementor())

תרגיל הגדלת מספר רמה: בינונית הוראות: צור פונקציה בשם incrementor הפונקציה צריכה ליצור קובץ בשם statistics.log שבו יהיה שמור מספר שמתחיל מ1 וכל פעם שקוראים לפונקציה המספר בקובץ יגדל באחד ויחזיר את המספר המעודכן דוגמא: >>> incermentor() '1' >>> incermentor() '2' בהצלחה תשובות לבוט: @Python_tipbot

למי שרוצה דוגמא שימושית ממיר תמונות from PIL import Image import os import sys def convert_photos(file_path, output): try: img = Image.open(file_path) img = img.convert('RGB') img.save(output) return True except: return False def main(): if len(sys.argv) != 3: print('Usage: python3 covnet_photo.py [file path] [output path]') exit() file_path = sys.argv[1] output = sys.argv[2] if os.path.isfile(file_path): res = convert_photos(file_path, output) if res: print(f'the file save in {output}') else: print('we got error while try to save you\'r file') if __name__ == "__main__": main()

הסבר sys.argv הוא מודול מובנה ב-פייתון המאפשר לך לגשת לארגומנטים של שורת הפקודה המועברים לסקריפט שלך. זהו מודול שימושי ליצירת תוכניות מהירות ללא אינטרקציה פנימית אם הסקריפט. גישה לארגומנטים של שורת הפקודה: ניתן לגשת לsys.argv בעזרת אינדקסים בגלל שהוא איבר מסוג רשימה (list) ניתן לאמת זאת על ידי שימוש ב - print(type(sys.argv)) הפריט הראשון ב-sys.argv הוא תמיד שם הסקריפט עצמו. ארגומנטים נוספים מאוחסנים באינדקסים עוקבים. דוגמא 1:
import sys

# Print the file name
print("file Name:", sys.argv[0])

# Print the command-line arguments
print("Arguments:", sys.argv[1:])

נניח שאתה מפעיל את הסקריפט שלמעלה באמצעות הפקודה python my_script.py arg1 arg2 arg3. הפלט יהיה:
file Name: my_script.py
Arguments: ['arg1', 'arg2', 'arg3']

דוגמא 2:
מחשבון דרך שורת פקודה

import sys

# Calculate the sum of two numbers passed as arguments
if len(sys.argv) == 3:
    try:
        num1 = float(sys.argv[1])
        num2 = float(sys.argv[2])
        result = num1 + num2
        print("Sum:", result)
    except ValueError:
        print("Invalid arguments. Please provide two numbers.")
else:
    print("Invalid number of arguments. Please provide two numbers.")

אם תפעיל את הסקריפט באמצעות python calculate_sum.py 5 3, הפלט יהיה:
Sum: 8.0

סיכום: sys.argv , מאפשר לנו לגשת בקלות לארגומנטים של שורת הפקודה. נוכל ליצור סקריפטים שיכולים לקבל קלט של משתמשים משורת הפקודה.

יותר מאוחר יעלה הדרכה קצרה על sys.argv ולמה זה משמש לביינתים הכנתי סרטון הדגמה תהנו

צום מועיל לכל מי שצם🙏 דף יצירת קשר הנה לכם הקוד הסופי לדף יצירת קשר כולל כמה פיטצרים חמודים, ממליץ לעבור על הקוד עשיתי אותו כמה שיותר קריא אשמח להערות והארות https://gist.github.com/nhman-python/9743313b49d3bcaf18c53749c1cddc18

דוגמא
דוגמא

שלום לכולם נזכרתי בספרייה ממש טובה ליצירת אפליקצית ווב (אתר) במהירות בלי צורך לכתוב html וכל זה. יעניין אותכם מדריך איך ב10 שורות קוד אנחנו עושים אתר יפה אם הלוגיקה כמו בדף יצירת קשר שיצרתי? https://github.com/nhman-python/telegram_contacts 👍\👎

‎מדריך requests :‎דוגמא
import requests
res = requests.get('https://google.com')
print(res.text) # html
print(res.status_code) # לדוגמא 200
print(res.headers)

הגדרה ושימוש ספריית requests מאפשר לך לשלוח בקשות HTTP באמצעות פייתון. בקשת ה-HTTP מחזירה אובייקט תגובה עם כל נתוני התגובה (תוכן, קידוד, סטטוס וכו'). תחביר: ‏requests.methodname(params) מטודות delete(url, args) שולח בקשה מחיקה לכתובת ה-URL שצוינה get(url, params, args) שולח בקשת GET לכתובת ה-URL שצוינה head(url, args) שולח בקשת HEAD לכתובת ה-URL שצוינה patch(url, data, args) שולח בקשת PATCH לכתובת ה-URL שצוינה post(url, data, json, args) שולח בקשת POST לכתובת ה-URL שצוינה put(url, data, args) שולח בקשת PUT לכתובת ה-URL שצוינה request(method, url, args) שולח request לפי הבקשה שצוינה לכתובת ה-URL.

מי שרוצה הוספתי תמיכה בווב לסקריפט שעוקף את ההגבלות של gpt https://github.com/nhman-python/Bypass-chatgpt-Python/blob/main/web_chat.py