py_sftp uses sftp to transfer files from remote to local and vice-versa.
Project description
sftp_py is a Python package for transferring files between remote and local directories using the paramiko sftp client. After transfer, downloaded/uploaded files can be optionally deleted from the remote/local source directory. Only files (not directories) are transferred - there is no option to recursively transfer nested directories.
Installation
From pypi:
pip3 install sftp_py
From GitHub repository:
git clone https://github.com/AlexOrlek/sftp_py.git
cd sftp_py
pip3 install .
Options and usage
sftp_py can be used within a Python script as follows:
from sftp_py.transfer import RemoteTransfer
conn = RemoteTransfer([
arguments...
])
To download from a remote server:
# Establish connection and download files.
# local_path must be a directory
# remote_path can be a single file or a directory containing files to be transferred
conn = RemoteTransfer(host=host_name, username=user_name, port=22, key=private_key_path)
conn.connect()
conn.list_remote_dir(remote_path) # inspect directory contents
conn.remote_download(remote_path, local_path, copy_hidden_files=True, copy_symlink_files=True, remove=False)
# hidden files (.*) and symlink files are copied by default
# remove=True: downloaded files are removed immediately after transfer
# remove=False (default): downloaded files are recorded and can be removed later...
conn.downloaded_files # conn.downloaded_files records list of downloaded filenames
conn.remove_downloaded() # remove downloaded files
# Disconnect once finished
conn.disconnect()
To upload to a server:
# Code for uploading to a remote server is similar to code for downloading from a remote server...
conn = RemoteTransfer(host=host_name, username=user_name, port=22, key=private_key_path)
conn.connect()
conn.remote_upload(remote_path, local_path, remove=True) # upload and remove uploaded files from local_path
conn.disconnect()
License
History
0.2.0
- First release on PyPI
0.1.0
- First release, working code
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file sftp_py-0.2.1.tar.gz
.
File metadata
- Download URL: sftp_py-0.2.1.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.6rc1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4bb99c6c71ee513d37a09e610e6d48f9519e645b740b2b32449769b8984f2dac |
|
MD5 | 7f05e9496e73ef35f2bf6db4691d7b32 |
|
BLAKE2b-256 | 658afb89a816ed2e2af183d0011f44dd99c3dd95c553bfdc1d500b7d19ad67ff |
File details
Details for the file sftp_py-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: sftp_py-0.2.1-py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.6rc1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b835915c597d51cc54d75f8b86c21fc980567b9a0d6db75fa98fc7bbc72199af |
|
MD5 | 042da5404a339682cb688288ad709207 |
|
BLAKE2b-256 | f4cda6c9b68f8259595219344f44b89e069dadf9d33f305be15d60947de4217a |