一个功能强大的增强型下载模块,支持多线程下载、断点续传和进度显示
Project description
Enhanced Downloader
一个功能强大的Python下载模块,支持:
- 单线程和多线程下载
- 自动检测服务器是否支持分片
- 断点续传
- 进度显示
- 返回内容或保存到文件
- 智能下载策略
安装
pip install enhanced_downloader
使用示例
from enhanced_downloader import download_file
# 下载并保存到指定路径
download_path = download_file("https://example.com/large_file.zip", save_path="/path/to/save")
print(f"文件保存路径: {download_path}")
# 下载并返回内容
file_content = download_file("https://example.com/file.txt", return_content=True)
print(f"获取到文件内容,大小: {len(file_content)} 字节")
# 使用更多参数
download_path = download_file(
url="https://example.com/large_file.zip",
save_path="output.zip",
num_threads=20,
timeout=60,
temp_dir="/tmp/downloads",
min_size_for_multithread=5*1024*1024 # 5MB以上使用多线程
)
高级用法
from enhanced_downloader import EnhancedDownloader
# 创建下载器实例
downloader = EnhancedDownloader()
# 使用实例方法
downloader.download(
url="https://example.com/file.zip",
save_path="downloads/file.zip",
num_threads=30,
force_single_thread=False
)
参数说明
url: 下载链接save_path: 保存文件的路径,支持目录或完整文件路径return_content: 是否返回文件内容而不是保存到本地chunk_size: 下载块大小timeout: 请求超时时间(秒)num_threads: 多线程下载时的线程数temp_dir: 临时文件目录force_single_thread: 是否强制使用单线程下载min_size_for_multithread: 启用多线程下载的最小文件大小
版本更新
- 0.1.0: 初始版本
- 0.1.1: 优化多线程下载性能
- 0.1.2: 添加速度限制功能
- 0.1.3: 未指定目录时自动保存到最大可用磁盘,修复路径判断逻辑
- 0.2.0: 添加允许指定代理功能,优化下载速度
许可证
MIT License - 详见 LICENSE 文件
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
enhanced_downloader-0.2.1.tar.gz
(17.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file enhanced_downloader-0.2.1.tar.gz.
File metadata
- Download URL: enhanced_downloader-0.2.1.tar.gz
- Upload date:
- Size: 17.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e88f041c37c7229c3a02ccee601ad8bb4943ca63f80152a97d70f6c6a8045e6b
|
|
| MD5 |
c6d02312a5f88fc944672daa201a88ab
|
|
| BLAKE2b-256 |
66c521544fde11a83692b4dcdaa2d4c7eca4b8d5742290c62c8d1a0a6238987a
|
File details
Details for the file enhanced_downloader-0.2.1-py3-none-any.whl.
File metadata
- Download URL: enhanced_downloader-0.2.1-py3-none-any.whl
- Upload date:
- Size: 17.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81b9dc545aef5fe6dffc9cf49423086efad79e39e6057b998bef6c001de724d4
|
|
| MD5 |
50c0811b986b1782d1dfff60f5862d20
|
|
| BLAKE2b-256 |
72716b7971c3dbec6a162f7295128e4850c1aa9f1a08ce49ee2242dcb746c1d5
|