मैं पायथन अनुरोध लाइब्रेरी का उपयोग करके फ़ाइल अपलोड करने का एक सरल कार्य कर रहा हूं। मैंने स्टैक ओवरफ्लो की खोज की और किसी को भी यही समस्या नहीं हुई, अर्थात्, फ़ाइल सर्वर द्वारा प्राप्त नहीं हुई है:
import requests
url='http://nesssi.cacr.caltech.edu/cgi-bin/getmulticonedb_release2.cgi/post'
files={'files': open('file.txt','rb')}
values={'upload_file' : 'file.txt' , 'DB':'photcat' , 'OUT':'csv' , 'SHORT':'short'}
r=requests.post(url,files=files,data=values)
मैं अपने फ़ाइल नाम के साथ 'upload_file' कीवर्ड का मान भर रहा हूं, क्योंकि अगर मैं इसे खाली छोड़ता हूं, तो यह कहता है
Error - You must select a file to upload!
और अब मुझे मिलता है
File file.txt of size bytes is uploaded successfully!
Query service results: There were 0 lines.
जो फाइल खाली होने पर ही आता है। इसलिए मैं अपनी फ़ाइल को सफलतापूर्वक भेजने के तरीके के रूप में फंस गया हूं। मुझे पता है कि फ़ाइल काम करती है क्योंकि अगर मैं इस वेबसाइट पर जाता हूं और मैन्युअल रूप से भरता हूं तो यह मिलान की गई वस्तुओं की एक अच्छी सूची देता है, जो कि मैं बाद में हूं। मैं वास्तव में सभी संकेत की सराहना करता हूं।
संबंधित कुछ अन्य सूत्र (लेकिन मेरी समस्या का जवाब नहीं):