skillfed

pysftp

A friendly face on SFTP

pysftp v0.2.9 11.6M downloads/30d#1,382 on PyPI
Permissive license BSD Abandoned released

What it is and what it does

pysftp is a wrapper around paramiko's SFTP client that provides a simpler, task-oriented API for common file transfer operations. It offers context managers for connections, directory navigation helpers, recursive directory operations, and file metadata handling—reducing boilerplate for typical SFTP workflows.

The package is in Beta status and has been abandoned since 2016-07-06. While it carries no known vulnerabilities as of the current scan, it has received no maintenance, bug fixes, or security updates. The classifiers indicate testing through Python 3.5, and the underlying paramiko dependency may have evolved significantly since then.

Use it for:

  • Uploading or downloading files to a remote SFTP server with minimal connection boilerplate using context managers.
  • Recursively transferring directory trees between local and remote systems via put_r and get_r methods.
  • Walking remote directory structures and filtering files for batch operations without manual path handling.
  • Preserving file modification times during transfers to maintain metadata consistency across systems.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

pysftp provides a high-level Python interface to SFTP operations, wrapping paramiko to simplify file transfer, directory navigation, and remote filesystem tasks.

No. The package is abandoned and has not been updated since 2016-07-06. While it has no known vulnerabilities today, it will not receive security patches or bug fixes going forward. For new projects, use a maintained SFTP library or paramiko directly. For existing code already using pysftp, evaluate migration to an actively maintained alternative.

Install

pysftp on PyPI

pip

pip install pysftp

uv

uv add pysftp

poetry

poetry add pysftp

Installing pysftp

Before you install

Installation has high friction due to compiled dependencies. More critically, the package is abandoned—last release was 2016-07-06. No maintenance or security updates are forthcoming.

License in practice

BSD permissive license places no restrictions on use, modification, or distribution in your own projects.

Quickstart

import pysftp

with pysftp.Connection('hostname', username='me', password='secret') as sftp:
    sftp.put('/my/local/filename')
    sftp.get('remote_file')

Requires a working SSH/SFTP server accessible from your network and valid credentials (password or private key).

Verify before relying

  • Whether the package works reliably with modern Python versions beyond 3.5 (classifiers list 3.5 as the latest tested).
  • Whether underlying paramiko dependency has received security updates that pysftp inherits or whether pysftp's pinned versions are now outdated.
  • Active alternatives or maintained forks that may have addressed bugs or security issues since the last release.

Package facts

License BSD (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance abandoned — 3,691 days since the last release
First released
Downloads 11,608,958/month — #1,382 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pysftp-0.2.9.tar.gz

Keywords: sftp, ssh, ftp, internet

Development Status :: 4 - BetaLicense :: OSI Approved :: BSD LicenseProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: Implementation :: CPython

Tags

sftp client library pythonssh file transferremote file upload downloadsftp connection managerparamiko sftp wrapper
sftp-clientabandoned

More Internet packages