पैरामीको का SFTPClient का उपयोग कर एक पथ मौजूद है या नहीं, जाहिर है कि exists
विधि नहीं है। यह मेरा वर्तमान कार्यान्वयन है:जांचें कि एक दूरस्थ होस्ट पर पैरामीको
def rexists(sftp, path):
"""os.path.exists for paramiko's SCP object
"""
try:
sftp.stat(path)
except IOError, e:
if 'No such file' in str(e):
return False
raise
else:
return True
क्या ऐसा करने का कोई बेहतर तरीका है? अपवाद संदेशों में सबस्ट्रिंग के लिए जांच बहुत बदसूरत है और अविश्वसनीय हो सकती है।
यह शायद एक गैर पर करने के लिए क्योंकि स्टेट() सही तरीका है पैरामीको के माध्यम से एक एसएफटीपी सर्वर पर मौजूदा फ़ाइल errno.ENOENT त्रुटि कोड के साथ इस विशेष अपवाद को बढ़ाएगी: https://github.com/paramiko/paramiko/blob/master/paramiko/sftp_client.py#L722 – Devy