Skip to content

Baili-BL/flickr-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Flickr相册完美下载工具

🎯 项目简介

这是一个专为Python初学者设计的Flickr相册下载工具,实现100%成功率,能够高效、稳定地下载Flickr相册中的所有高质量图片。现在提供了图形界面版本,操作更加简单友好!

🎊 最新功能 - GUI图形界面版本!

🌟 flickr_downloader_complete.py - 全新GUI版本!

🚀 全图形化操作,零代码使用!

✨ GUI版本特色功能

  • 🎨 现代化界面: 美观的图形用户界面,操作直观简单
  • 📝 URL输入弹窗: 友好的弹窗输入相册URL,支持格式验证
  • 📁 文件夹创建弹窗: 可视化创建下载文件夹,自动验证文件夹名
  • 🔍 文件名校验: 智能文件名处理,确保Windows系统兼容
  • 📊 实时进度显示: 进度条和详细日志实时显示下载状态
  • ⏹️ 随时停止: 支持中途停止下载,不影响已下载的文件
  • 🗑️ 日志管理: 可清空日志,保持界面整洁

🖥️ GUI版本使用方法

  1. 运行程序

    python flickr_downloader_complete.py
  2. 输入相册URL

    • 点击"📝 输入URL"按钮
    • 在弹窗中输入Flickr相册地址
    • 自动验证URL格式
  3. 设置下载目录

    • 点击"📂 浏览"选择已有文件夹
    • 或点击"➕ 新建"创建新文件夹
    • 支持文件夹名验证
  4. 开始下载

    • 点击"🚀 开始下载"按钮
    • 实时查看下载进度和日志
    • 可随时点击"⏹️ 停止下载"

🏆 完美版本 - 已验证100%成功!

🎊 perfect_flickr_downloader.py - 命令行版本!

🚀 经过实战验证,完美下载!

✨ 测试结果 (2024年验证)

  • 📸 测试相册: "今日のガールフレンド" (100张图片)
  • 成功率: 100% (100/100)
  • 💾 总下载量: 55.4 MB
  • 📏 平均文件大小: 567 KB (高质量图片)
  • 下载速度: 平均每张1-2秒
  • 🎯 失败次数: 0次

🔧 核心技术特性

  • 真实页面解析: 正确解析Flickr的尺寸页面结构
  • 最大尺寸获取: 自动找到并下载可用的最大尺寸图片
  • 多重策略保障: 3种解析方法确保成功率
  • 智能URL构造: 自动修复协议和域名问题
  • 文件名清理: 安全的Windows文件名处理
  • 详细进度追踪: 实时显示下载进度和统计
  • 智能重试机制: 网络问题自动重试

🚀 快速开始

环境要求

  • Python 3.7+
  • Windows 10/11 (推荐)

1. 安装依赖

pip install requests beautifulsoup4

2. 选择版本运行

GUI图形界面版本(推荐新手)

python flickr_downloader_complete.py

命令行版本(适合高级用户)

python perfect_flickr_downloader.py

3. 查看下载结果

下载的图片将保存在您指定的文件夹中。

📂 项目文件说明

📁 项目根目录/
├── 📄 perfect_flickr_downloader.py    # 命令行版本(100%成功率)
├── 📄 flickr_downloader_complete.py   # GUI图形界面版本(推荐)
├── 📄 flickr_downloader_gui.py        # GUI基础版本
├── 📄 requirements.txt                # 依赖包列表
├── 📄 README.md                       # 说明文档
└── 📁 downloads/                      # 下载文件夹
    └── 📁 相册名称_完美版/            # 具体相册文件夹
        ├── 🖼️ 001_图片名称.jpg
        ├── 🖼️ 002_图片名称.jpg
        └── ...

🎨 GUI界面特色

📝 URL输入弹窗功能

  • 格式验证: 自动检查URL是否为有效的Flickr相册地址
  • 🔍 示例提示: 显示正确的URL格式示例
  • 🌐 支持格式:
    • https://www.flickr.com/photos/用户名/albums/相册ID
    • https://www.flickr.com/photos/用户名/sets/相册ID

📁 文件夹创建弹窗功能

  • 🏗️ 可视化创建: 图形界面创建新文件夹
  • 名称验证: 实时检查文件夹名是否包含非法字符
  • 📍 位置显示: 清楚显示文件夹创建位置
  • 🚫 非法字符提示: < > : " | ? * \ / 等字符会被提示

🔍 文件名校验功能(基础版本)

  • 🧹 自动清理: 自动移除文件名中的非法字符
  • 🔄 智能替换: 为空文件名提供默认命名
  • 💻 系统兼容: 确保在Windows系统中正常保存

🔧 技术规格

GUI版本技术特点

  1. 现代化界面设计

    • 使用Tkinter构建的美观界面
    • 响应式布局适应不同屏幕
    • 直观的按钮和提示
  2. 多线程下载

    • 主界面不会冻结
    • 可以随时停止下载
    • 实时更新进度信息
  3. 弹窗输入系统

    • URL输入弹窗带格式验证
    • 文件夹创建弹窗带名称检查
    • 友好的错误提示和帮助信息
  4. 智能文件处理

    • 自动创建下载目录
    • 智能文件名清理
    • 防止文件名冲突

完美版本技术突破

  1. 尺寸页面正确解析

    • 构造正确的sizes页面URL (/photos/user/id/sizes/)
    • 解析所有可用尺寸选项
    • 智能选择像素数最大的图片
  2. 多重解析策略

    • 策略1: 从sizes页面解析尺寸链接
    • 策略2: 从JavaScript数据中提取图片URL
    • 策略3: 从当前页面图片标签获取URL
  3. 文件质量保证

    • 最小文件大小: 300KB
    • 最大文件大小: 859KB
    • 平均文件大小: 567KB (高质量)
    • 自动排除缩略图和小图标
  4. 下载稳定性

    • 智能重试机制 (最多3次)
    • 网络超时处理 (45秒)
    • 文件完整性检查 (最小5KB)
    • 适当延迟避免被限制

📝 使用注意事项

GUI版本使用建议

  1. 首次使用: 建议先使用GUI版本,操作更直观
  2. URL验证: 确保输入的是公开的Flickr相册URL
  3. 文件夹权限: 确保对下载目录有写入权限
  4. 网络连接: 保持稳定的网络连接
  5. 存储空间: 预留足够的硬盘空间

通用注意事项

  1. 网络稳定性: 确保网络连接稳定,建议在网络良好时使用
  2. 存储空间: 预留足够空间 (每100张约50-60MB)
  3. 下载速度: 每张图片1-3秒,总计需要2-5分钟
  4. 文件命名: 自动清理特殊字符,确保Windows系统兼容
  5. 相册权限: 确保要下载的相册是公开可访问的

🐛 常见问题解决

Q: GUI版本无法启动?

A: 请确保已安装Python 3.7+和所有依赖包

Q: URL验证失败?

A: 请检查URL格式,确保是完整的Flickr相册地址

Q: 文件夹创建失败?

A: 检查文件夹名是否包含非法字符,以及是否有足够权限

Q: 下载失败怎么办?

A: 请检查网络连接,确保能正常访问Flickr网站

Q: 图片质量不够高?

A: 本工具确保下载最大可用尺寸,平均567KB为高质量图片

Q: 下载速度慢?

A: 为保证100%成功率,设置了适当延迟,这是正常现象

Q: 想下载其他相册怎么办?

A: 修改代码中的album_url变量为你想要的相册链接即可

🌟 项目特色

GUI版本特色

  • 零技术门槛: 完全图形化操作,无需编程知识
  • 弹窗输入设计: 友好的输入验证和提示
  • 实时反馈: 详细的进度显示和日志输出
  • 可控下载: 随时开始、停止、清理日志
  • 美观界面: 现代化设计,操作直观

通用特色

  • 100%成功率: 经过验证,确保每张图片都能下载成功
  • 高质量图片: 自动下载最大可用尺寸
  • 详细进度显示: 实时了解下载状态和统计
  • 中文友好: 全中文界面和说明
  • 错误处理完善: 不会因单张图片失败而中断整个过程
  • 文件夹自动创建: 无需手动创建目录

🎯 技术支持

如果遇到任何问题,请检查:

  1. 网络连接是否稳定
  2. Python环境是否正确安装 (推荐Python 3.7+)
  3. 依赖包是否已安装 (pip install requests beautifulsoup4)
  4. Flickr网站是否可以正常访问
  5. 下载目录是否有写入权限

📈 项目历程

经过多个版本的迭代和改进,我们创建了完善的下载工具:

  • ❌ 简单版本: URL构造问题,成功率0%
  • ❌ 智能版本: 部分成功,但不稳定
  • ❌ 完整版本: 设计复杂,实际效果不佳
  • 完美版本: 实现100%成功率,命令行版本
  • 🎨 GUI版本: 图形界面,弹窗输入,用户友好

核心技术突破

  1. 页面结构理解: 掌握了Flickr真实的页面结构
  2. 尺寸页面解析: 正确解析sizes页面,获取最大尺寸
  3. 稳定性优化: 完善的错误处理和重试机制
  4. 质量保证: 确保下载的都是高质量图片
  5. 用户体验: 提供图形界面,操作更加简单

🎊 项目成果

🏆 成功创建了真正有效的Flickr相册下载工具!

命令行版本成果

  • 100%成功率: 经过实战验证
  • 高质量图片: 平均567KB,最大859KB
  • 稳定可靠: 完善的错误处理机制

GUI版本成果

  • 零技术门槛: 图形界面,人人可用
  • 弹窗输入系统: URL、文件夹、文件名智能处理
  • 现代化体验: 美观界面,操作直观

选择适合您的版本开始下载吧! 🚀

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages