6
您好我正在使用python并试图连接到sftp并希望从那里检索一个xml文件,并需要放置在我的本地系统,下面是代码如何列出目录中的所有文件夹和文件通过python连接后通过sftp
import paramiko
sftpURL = 'sftp.somewebsite.com'
sftpUser = 'user_name'
sftpPass = 'password'
ssh = paramiko.SSHClient()
# automatically add keys without requiring human intervention
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(sftpURL, username=sftpUser, password=sftpPass)
ftp = ssh.open_sftp()
files = ftp.listdir()
print files
这里连接是成功的充分,现在我希望看到所有文件夹和所有文件和需要进入到所需的文件夹,从那里获取XML文件。
最后我的目的是在连接到sftp服务器后查看所有文件夹和文件。 在上面的代码中,我曾使用ftp.listdir()
,通过它我有一些事情输出像下面
['.bash_logout', '.bash_profile', '.bashrc', '.mozilla', 'testfile_248.xml']
我想知道这些是否是唯一的文件存在?
而我上面使用的命令是正确的查看文件夹吗?
什么是查看所有文件夹和文件
依托'SFTPAttributes'是一个可怕的,可怕的黑客的字符串化行为。你为什么不正确地做,并使用'stat.S_ISDIR(lstatout.st_mode)'? –
@FakeName我正在尝试这样做,但我不理解您的评论。 –
@PANDAStack - 'ftp.lstat(i)'返回类的实例['SFTPAttributes'](https://github.com/paramiko/paramiko/blob/6978c7a0b8faa683b119de3a0c096be31ac4fdc9/paramiko/sftp_attr.py#L25)。这个答案的方式取决于库如何选择'SFTPAttributes' * look *的'__repr__',这是一个完全**设计的接口,用于程序员调试,并且可能未经测试或保证即使在补丁版本号中也是如此。 –