जीसीपी - पायथन के साथ स्टोरेज को सरलतम तरीके से फ़ाइल अपलोड करने का तरीका

DOJO स्मार्ट तरीके से उद्यमी के रूप में अपनी यात्रा के दौरान मैं Google क्लाउड प्लेटफ़ॉर्म और डेटा प्रोसेसिंग के बारे में उनकी सेवाओं से वास्तव में जुड़ा हुआ हूं।

मुझे लगता है कि मैं थोड़ा संघर्ष कर रहा था, अपने ऐप से सीधे Google क्लाउड स्टोरेज पर फ़ाइल अपलोड करने के बारे में था, बिना किसी मिडलवेयर के, स्थानीय डेटाबेस में सहेजने की आवश्यकता के बिना और इसे एक बड़ी फ़ाइल के रूप में भी काम करते रहना चाहिए।

स्टैक्वेरफ्लो समुदाय और बहुत सारे शोध, कोशिश और त्रुटियों से मदद के बाद, मुझे एक सरल तरीका मिला और मैं इस रसोई की किताब को आपसे साझा करना चाहूंगा। बेशक एक ही काम करने के कई तरीके हैं, लेकिन मुझे यह सबसे सरल के रूप में मिला है। दूसरों को करने के लिए स्वतंत्र महसूस करें या सुधार करने के लिए मेरा सुझाव दें। हमेशा सीखना यही मायने रखता है।

पर्यावरण: पायथन 3.7.6 और फ्लास्क
  1. Google क्लाउड प्लेटफ़ॉर्म पर पंजीकरण करें
  2. अपने Google क्लाउड स्टोरेज पर संचालन करने के लिए प्राधिकरण के साथ एक सेवा खाता बनाएँ।

3. ऑब्जेक्ट के लिए संग्रहण व्यवस्थापक चुनें

4. JSON क्रेडेंशियल फ़ाइल डाउनलोड करें और इसे नीचे दिए गए उदाहरण के रूप में अपने अजगर कोड में इंगित करें:

आयात os
credential_path = os.path.join (os.path.dirname (app.instance_path), 'CREDENTIAL_FILE.json') os.environ ['GOOGLE_APPLICIN_CREDENTIALS'] = credential_path

4. चलो कोड पर जाएं। उस तरह सरल, आनंद लें!

storage_client = storage.Client () फ़ाइल = request.files ['inputFile'] नाम = safe_filename (file.filename) बाल्टी = 'your_BUCKET_NAME' बाल्टी = संग्रहण_client.get_bucket (बाल्टी) blob = bucket.blob (नाम) blob.chbus 1024 * 1024 blob.upload_from_file (फ़ाइल)

अंतिम टेकअवे:

  • request.files लाइन उस फॉर्म को संदर्भित करती है जिसे चुनी गई फ़ाइल मिली
  • हमें फ़ाइल को स्थानीय संग्रहण या एक मिडलवेयर स्टोरेज में सहेजने की आवश्यकता नहीं है, यह सीधे क्लाउड Google संग्रहण बाल्टी में जाता है