اذهب إلى المحتوى

السؤال

نشر

أريد أن أقوم بعمل صفحة بسيطة بإستخدام فلاسك Flask، حيث يقوم المستخدم برفع ملف نصي ويتم تحويله إلى CSV ثم يقوم المستخدم بتحميل الملف النهائي.

أعلم أنه يمكن الوصول إلى الملفات المرفوعه في فلاسك Flask من خلال الكود التالي:

uploaded_file = request.files['field_name']

لكن كيف يمكنني إستخدام هذا الملف، أريد أن أقرأ محتوياته فقط، ولست بحاجة إلى حفظه على الخادم من الأساس.

كيف يمكن القيام بهذا الأمر في فلاسك Flask؟

Recommended Posts

  • 1
نشر

لقراءة ملف الCSV قبل حِفظه قُم بتحويله إلى دفق نص (Text stream) باستخدام io.TextIOWrapper:

import io

from flask import Flask, jsonify, request


@app.route('/upload/', methods=['POST'])
def csv_upload():
    filebuf = request.files.get('csvfile')#جلب الملف من الطلب
    if filebuf is None:# التأكد من أن الملف موجود وإلا نقوم بارجاع خطأ للعميل
        return jsonify(message='Please specify the file'), 400
    elif 'text/csv' != filebuf.mimetype: #التأكد من أن نوع الملف المُحَمّل هو CSV
        return jsonify(message='Only CSV files will be accepted'), 415

    text_stream = io.TextIOWrapper(filebuf.stream, encoding='utf8')# نقوم بتحويل الملف الى دفق نص
    for row in csv.reader(text_stream):#نقرأ محتوى الملف
        #ضع شيفرة القراءة هنا

    return jsonify(message=f'{filebuf.filename!r}Loaded'), 200#إرجاع جواب للعميل بأن الملف حُمّل بنجاح

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...