Easily download files from ftp servers!
Project description
Easily download files from ftp servers!
Installation
Install from PyPI using pip
:
pip install ftp_download
Getting started:
ftp_download
is built upon Python's ftplib
, an it is a higher level interface made to allow downloads from ftp servers with simple and straightfoward code.
Here, everything starts with creating an ftplib.FTP
object:
from ftplib import FTP
ftp = FTP(
host = "ftp.examplehost.com",
user = "your_login_name",
passwd = "your_secure_password",
acct = "your_account_if_any"
)
Then you can start downloading. Here are some examples:
Download a single file
For the examples here we will go with:
import ftp_download as ftpd
from ftplib import FTP
import os
ftp = FTP("cran.r-project.org")
To download a file we can do this:
# downloading /pub/R/CRANlogo.png
# from cran.r-project.org
rp = "/pub/R/CRANlogo.png"
lp = os.path.expanduser("~") # Download to user folder
ftpd.file(ftp, remote_file_path=rp, local_path=lp)
Notice that local_path
was specified, but if not, ftp_download
will save the files in {user_folder}/Downloads/ftp_download
.
Download files from a folder
You can also give a path to a folder and download everything from there, notice that this is not recursive, and will get only the files at the top level of remote_path
.
rp = "/pub/R/web"
lp = os.path.expanduser("~") # Download to user folder
ftpd.from_folder(ftp, remote_path=rp, local_path=lp)
It's also important to notice that currently, ftp_download
will not create a "web" folder on the local_path
specified.
Important configurations
ftp_download
will have a standard behavior that can be tweaked by changing the default values of ftp_download.Conf
:
import ftp_download as ftpd
# To stop printing event messages to stdout (default: True)
ftpd.Conf.verbose = False
# To change the standard download path (default: {user_folder}/Downloads/ftp_download)
ftpd.Conf.download_folder = "C:\\my\\custom\\path"
# To change the maximum amount of concurrent downloads (default: 20)
ftpd.Conf.set_max_concurrent_jobs(300)
For more information, read the documentation.
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 ftp_download-0.1.1.tar.gz
.
File metadata
- Download URL: ftp_download-0.1.1.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c75d2a4c255ec48234240319c9f858add5e75a3fdec1a040fad5b2f71049047 |
|
MD5 | ae81ea5d4572c82b6473512e3baa0098 |
|
BLAKE2b-256 | 9364396ccb17c1284dfedf9d2d72ce4fa656e3c7eddd18945fc8da86fb182cb3 |
File details
Details for the file ftp_download-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: ftp_download-0.1.1-py3-none-any.whl
- Upload date:
- Size: 8.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe2d873d91b430f121b09cc084d6442506f460f754e23f25175d462b1dda00f0 |
|
MD5 | 62f25891404182b263bf7fcb8b94431e |
|
BLAKE2b-256 | 9424333392c984051862961efde990c32bc980b8d9b480fa3d23a1ede5643e9a |