目次
1. ما هو Base64؟ طريقة الاستخدام الأساسية في Python
ما هو Base64؟ Base64 هو طريقة لتشفير البيانات الثنائية إلى صيغة نصية. تُستخدم بشكل خاص في البريد الإلكتروني، وعناوين URL، والاتصالات الويب، لتأمين نقل البيانات الثنائية. تتيح هذه التقنية تشفير الصور والملفات وتبادلها بأمان على شكل نصي. فوائد استخدام Base64 في Python في Python، يمكنك استخدام مكتبةbase64
القياسية لتشفير وفك تشفير Base64 بسهولة دون الحاجة إلى تثبيت إضافي. يوضح الكود التالي كيفية تشفير سلسلة إلى صيغة Base64 ثم فك تشفيرها للعودة إلى الأصل.import base64
# البيانات التي سيتم تشفيرها
data = "こんにちは"
encoded_data = base64.b64encode(data.encode('utf-8'))
print(encoded_data) # b'44GT44KT44Gr44Gh44Gv'
# فك التشفير وإعادة البيانات إلى الأصل
decoded_data = base64.b64decode(encoded_data).decode('utf-8')
print(decoded_data) # مرحبا
b64encode()
الدالة تقوم بتشفير سلسلة البايتات إلى صيغة Base64.encode('utf-8')
تُستخدم لتحويل السلسلة إلى بايتات.b64decode()
الدالة تقوم بفك تشفير البيانات المشفرة وإعادتها إلى السلسلة الأصلية.

2. خطوات إجراء ترميز Base64 في بايثون
ترميز السلسلة يتم تنفيذ ترميز Base64 بعد تحويل النص أو البيانات إلى سلسلة بايت. يوضح الكود التالي خطوات ترميز السلسلة في بايثون.import base64
# ترميز السلسلة
text = "Python Base64"
encoded_text = base64.b64encode(text.encode('utf-8'))
print(encoded_text) # b'UHl0aG9uIEJhc2U2NA=='
شرح: encode('utf-8')
يحوّل السلسلة إلى بايت، ثم يتم ترميز Base64 باستخدام b64encode()
. تُعرض البيانات المشفرة كسلسلة بايت.3. آلية فك ترميز Base64 ومثال
طريقة إرجاع البيانات المشفرة إلى أصلها فيما يلي مثال على فك ترميز البيانات المشفرة بـ Base64 وإرجاعها إلى السلسلة الأصلية.import base64
# البيانات المشفرة بـ Base64
encoded_data = b'UHl0aG9uIGlzIGdyZWF0'
# فك الترميز وإرجاع السلسلة الأصلية
decoded_data = base64.b64decode(encoded_data).decode('utf-8')
print(decoded_data) # Python is great
نقطة:
نظرًا لأن البيانات المفكوكة تُرجع كسلسلة بايتات، نستخدم decode('utf-8')
لإعادتها إلى نص. يتيح ذلك استعادة السلسلة المشفرة إلى شكلها الأصلي.
4. طريقة ترميز وفك ترميز ملفات الصور إلى Base64 باستخدام Python
تحويل ملف الصورة إلى صيغة Base64 Base64 يمكنه ترميز البيانات الثنائية مثل ملفات الصور. في المثال التالي، سنعرض طريقة ترميز ملف صورة إلى Base64 وحفظه بصيغة نصية.import base64
# قراءة ملف الصورة وترميزه إلى صيغة Base64
with open('image.png', 'rb') as img_file:
encoded_image = base64.b64encode(img_file.read())
print(encoded_image)
طريقة إرجاع ملف الصورة إلى أصله فيما يلي الشيفرة التي تقوم بفك ترميز ملف الصورة المشفر وإعادته إلى صيغة الصورة.import base64
# بيانات الصورة المشفرة
encoded_image = b'...' # البيانات المشفرة
# فك الترميز وحفظه كملف صورة
with open('decoded_image.png', 'wb') as img_file:
img_file.write(base64.b64decode(encoded_image))
شرح: b64encode()
باستخدام يتم ترميز الصورة، وb64decode()
يتم فك الترميز لإعادة البيانات إلى الصيغة الثنائية.5. أمثلة تطبيقية عملية على Base64
مثال على الاستخدام في تطبيقات الويب Base64 مفيد جدًا عند تبادل البيانات في تطبيقات الويب أو واجهات برمجة التطبيقات (API). على سبيل المثال، مثال على API يقوم بتحويل صورة إلى صيغة Base64 وإرجاعها كاستجابة JSON.from flask import Flask, jsonify
import base64
app = Flask(__name__)
@app.route('/image')
def get_image():
with open('image.png', 'rb') as image_file:
encoded_image = base64.b64encode(image_file.read()).decode('utf-8')
return jsonify({'image': encoded_image})
if __name__ == '__main__':
app.run(debug=True)
هذا الـ API مثال بسيط يقوم بترميز الصورة إلى Base64 وإرجاعها كـ JSON. في تطبيقات الويب، يكون مفيدًا عند حفظ الصور في قاعدة البيانات أو عند تبادل بيانات الصور عبر اتصالات API.