gpt4 book ai didi

python - 从 SFTP 服务器打开 Astropy FITS 文件

转载 作者:太空宇宙 更新时间:2023-11-04 00:07:13 24 4
gpt4 key购买 nike

我有一个 Python 脚本,它使用 Paramiko 模块通过 ssh 连接到远程服务器。

下面是我的脚本

import paramiko

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("host", username="McMissile")

本地机器上的 FITS 文件通常按如下方式打开:

from astropy.io import fits

hdu = fits.open('File.fits')

我想知道如何从 SFTP 服务器计算机打开 FITS 文件并将其存储在本地计算机的变量 hdu 下。

由于存储限制,我无法将文件从服务器下载到本地计算机。

最佳答案

Astropy.io fits.open method接受类文件对象代替文件名:

name : file path, file object, file-like object or pathlib.Path object


代表远程文件的类文件对象由 Paramiko 返回 SFTPClient.open method :

A file-like object is returned, which closely mimics the behavior of a normal Python file object, including the ability to be used as a context manager.


所以这应该可行:

sftp_client = ssh_client.open_sftp()
with sftp_client.open('remote_filename') as remote_file:
hdu = fits.open(remote_file)

关于python - 从 SFTP 服务器打开 Astropy FITS 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53718571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com