ftplib मॉड्यूल में सभी महत्वपूर्ण एफ़टीपी वर्ग एफ़टीपी प्रोटोकॉल के क्लाइंट पक्ष को लागू करता है।
FTP सर्वर के साथ संबंध स्थापित करने के लिए, FTP ऑब्जेक्ट प्राप्त करें।
con=FTP(होस्टनाम)
FTP वर्ग निम्नलिखित विधियों का समर्थन करता है -
कनेक्ट ()
दिए गए होस्ट और पोर्ट से कनेक्ट करें। डिफ़ॉल्ट पोर्ट संख्या 21 है, जैसा कि एफ़टीपी प्रोटोकॉल विनिर्देश द्वारा निर्दिष्ट किया गया है।
गेटवेलकम ()
प्रारंभिक कनेक्शन के जवाब में सर्वर द्वारा भेजा गया स्वागत संदेश लौटाएं।
लॉगिन (उपयोगकर्ता ='अनाम', पासवार्ड ='', acct =''')
दिए गए उपयोगकर्ता के रूप में लॉग इन करें। पासवार्ड और एक्ट पैरामीटर वैकल्पिक हैं और खाली स्ट्रिंग के लिए डिफ़ॉल्ट हैं। यदि कोई उपयोगकर्ता निर्दिष्ट नहीं है, तो यह डिफ़ॉल्ट रूप से 'गुमनाम' हो जाता है। यदि उपयोगकर्ता 'गुमनाम' है, तो डिफ़ॉल्ट पासवार्ड 'गुमनाम@' है।
निरस्त ()
एक फ़ाइल स्थानांतरण को निरस्त करें जो प्रगति पर है।
retrbinary(cmd, कॉलबैक, blockize=8192, बाकी=कोई नहीं)
बाइनरी ट्रांसफर मोड में फ़ाइल पुनर्प्राप्त करें। cmd एक उपयुक्त RETR कमांड होना चाहिए:'RETR फ़ाइल नाम'।
स्टोरबाइनरी ()
फ़ाइल को बाइनरी ट्रांसफर मोड में स्टोर करें। cmd एक उपयुक्त STOR कमांड होना चाहिए:"STOR फ़ाइल नाम"। fp एक फ़ाइल ऑब्जेक्ट है (बाइनरी मोड में खोला गया) जिसे EOF तक इसके रीड () विधि का उपयोग करके पढ़ा जाता है
dir()
LIST कमांड द्वारा लौटाई गई निर्देशिका सूची तैयार करें, इसे मानक आउटपुट पर प्रिंट करें।
हटाएं (फ़ाइल नाम)
फ़ाइल नाम नाम की फ़ाइल को सर्वर से निकालें।
cwd(pathname)
सर्वर पर वर्तमान निर्देशिका सेट करें।
एमकेडी(पथनाम)
सर्वर पर एक नई निर्देशिका बनाएँ।
एफ़टीपी.pwd()
सर्वर पर वर्तमान निर्देशिका का पथनाम लौटाएं।
आरएमडी(dirname)
सर्वर पर dirname नाम की डायरेक्टरी को हटा दें।
आकार (फ़ाइल नाम)
सर्वर पर फ़ाइल नाम नाम की फ़ाइल के आकार का अनुरोध करें। सफल होने पर, फ़ाइल का आकार पूर्णांक के रूप में लौटा दिया जाता है, अन्यथा कोई नहीं लौटाया जाता है। ध्यान दें कि SIZE कमांड मानकीकृत नहीं है, लेकिन कई सामान्य सर्वर कार्यान्वयन द्वारा समर्थित है।
छोड़ो ()
सर्वर को एक QUIT कमांड भेजें और कनेक्शन बंद करें।
निम्नलिखित उदाहरण एक सर्वर के साथ अनाम कनेक्शन स्थापित करता है, एक फ़ाइल को स्थानीय फ़ोल्डर में डाउनलोड करता है और एक स्थानीय फ़ाइल अपलोड करता है।
from ftplib import FTP
import os
def downloadFile():
filename = 'README.MIRRORS'
localfile = open(filename, 'wb')
ftp.retrbinary('RETR ' + filename, localfile.write, 1024)
ftp.quit()
localfile.close()
def uploadFile():
filename = '/home/malhar/file.txt'
ftp.storbinary('STOR '+filename, open(filename, 'rb'))
ftp.quit()
with FTP("ftp1.at.proftpd.org") as ftp:
ftp.login()
ftp.getwelcome()
ftp.dir()
downloadFile()
uploadFile()