基于 Python 的高品质音乐抓取下载程序,支持搜索和下载 FLAC 格式的音乐文件。
- 🎵 支持关键词搜索音乐
- 📄 支持分页搜索
- 🎧 只下载高品质 FLAC 格式音乐 (hasSQ=true)
- 📁 自动按搜索关键词创建文件夹
- 🔄 自动跳过已存在的文件
- ⏱️ 内置请求延时,避免频繁请求
- 🍪 自动Cookie管理 - 使用DrissionPage自动获取和刷新cookies
- 🔄 智能重试机制 - 自动处理网络错误和cookie过期
- 🛡️ 防爬保护 - 随机延迟和请求头优化
pip install -r requirements.txtpython start.py选择"快速启动",程序会自动管理cookies并开始下载。
python music_downloader.py如果遇到cookie过期问题:
python cookie_manager.pyfrom music_downloader import MusicDownloader
# 使用自动cookie管理 (推荐)
downloader = MusicDownloader(auto_refresh_cookies=True)
downloader.process_keyword("周杰伦", max_pages=2)
# 使用固定cookies
downloader = MusicDownloader(auto_refresh_cookies=False)
downloader.process_keyword("邓紫棋", max_pages=1)下载的文件会保存在以搜索关键词命名的文件夹中,文件名格式为:歌手_歌曲名.flac
例如搜索"周杰伦",会创建"周杰伦"文件夹,其中包含:
周杰伦_花海.flac周杰伦_霍元甲.flac- ...
程序内置了多种防爬保护机制:
- 🕐 搜索页面间隔延迟 (1秒)
- ⏳ 获取下载链接延迟 (0.5-1秒随机)
- 🎯 下载完成后延迟 (2-3秒随机)
- 🔄 自动重试机制 (最多3次)
- 📊 进度显示和状态提示
可以在 config.py 中调整延迟设置:
search_delay: 搜索页面间隔download_delay: 下载间隔get_url_delay: 获取链接间隔
- 程序会自动过滤掉不支持高品质下载的歌曲 (hasSQ=false)
- 文件名中的特殊字符会被替换为下划线
- 内置防爬延迟,请耐心等待下载完成
- 如遇到468错误,请更新
config.py中的cookies - 下载的音乐文件仅供个人学习使用,请支持正版