'How to download specified extension type of files from FTP server using python [duplicate]
I am trying to download each .txt file from my FTP server using python but as of now I only have one file being downloaded that is specified by it's name. Does anyone know the way I can change it to download all of the .txt files from my server?
# connect to the FTP server
ftp = FTP(FTP_HOST, FTP_USER, FTP_PASS)
ftp.encoding = "utf-8"
ftp.cwd('/files')
ftp.retrlines('LIST')
with open('test.txt', 'wb') as fp:
ftp.retrbinary('RETR test.txt', fp.write)
ftp.quit()
Solution 1:[1]
Something like this should work fine:
import fnmatch
with FTP(FTP_HOST,FTP_USER,FTP_PASS) as ftp:
ftp.encoding = "utf-8"
ftp.cwd('/files')
for filename in ftp.nlst():
if fnmatch.fnmatch(filename, '*.txt'):
with open(filename, 'wb') as fp:
ftp.retrbinary(f'RETR {filename}', fp.write)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Christian Sloper |
