Solución:
No hay ninguna función para descargar archivos que coincidan con una máscara de archivo en pysftp.
Tienes que:
- enumerar el directorio, usando
listdir
owalktree
(si necesita recursividad) - iterar la lista de archivos, filtrando los archivos que desee
- llama
get
individualmente para cada uno.
Para inspirarte, mira cómo get_d
o get_r
son implementados.
Para una implementación trivial, consulte Listar archivos en el servidor SFTP que coinciden con comodines en Python usando Paramiko. Para ver un ejemplo recursivo, consulte Python pysftp get_r de Linux funciona bien en Linux pero no en Windows.
Puede confirmar después de revisar la documentación que no puede enumerar usando un patrón. Entonces hice algo como esto:
import pysftp
import re
server = pysftp.Connection(host=FTP_HOST,
username=FTP_USERNAME,
password=FTP_PASSWORD)
server.cwd(YOUR_FILES_PATH)
filelist = server.listdir()
for filename in filelist:
filedate = re.search(".*.txt$", filename)
if filedate:
print "FOUND FILE " + filename
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)