【v1.5.20130315】
1)『除错』百度调整了专辑关联歌手名的html代码,biabiamiamia相应调整,否则会出现“未搜索到该歌手”的警告;
【v1.4.20130308】
1)『除错』修正对含有英文双引号的专辑名解析异常的错误(如,<h4><a href="/album/7311085" title=""怀念.五年"邓丽君逝世五周年纪念集">);
【v1.3.20130307】
1)『调优』下载输出信息中增加歌手名、分隔符等;
2)『除错』恢复续下时会重复下载中断前最后一次已成功下载的歌曲,调整代码不重复下载;
3)『除错』修正多实例同时下载不同歌手的歌曲导致歌曲混乱的错误;
4)『除错?』调整CMake脚本,取消将编译警告视为编译错误的编译选项(以减少出现编译错误几率)、增加代码自动优化的编译选项;(说明:个人强烈建议对代码进行严苛的类型转换检查。但,我在“gcc (SUSE Linux) 4.7.1 20120723 [gcc-4_7-branch revision 189773]”环境下,即便添加了-Wconversion编译选项,编译时仍然无法检查到类型转换错误,@_@?。为保证大部分机器上能成功编译,只能妥协取消之。莫非openSUSE 12.2预编译的gcc时参数没给全导致功能缺失??)
5)『新增』发布FAQ;
【v1.2.20130305】
1)『调优』指定平均下载速度下限为8kbps,低于此自动重新连接,最多重连4次;
2)『调优』资源不存在时会出现503错误页面,忽略503页面而不再将其当作资源下载;
3)『调优』为减少出现验证码的几率,下载时伪装成firefox且增加页面引用;
4)『调优』对于导致下载失败的不同原因进行区别:因网络质量导致下载失败(处理机制,重新下载)、因出现验证码导致下载失败(处理机制,获取BAIDUVERIFY的cookie键值后重新下载);
5)『除错』修正部分歌曲名中含有“/”的歌曲无法下载的问题(thanks to Iven Hsu);
6)『新增』命令行参数错误时,显示帮助信息;
7)『新增』下载暂停/恢复功能。ctrl+c退出程序,下次若下载先前歌手的所有专辑(指定专辑无效)时,自动从中断歌曲续下;
【v1.1.20130228】
1)发布biabiamiamia;
======================
【简介】
biabiamiamia是一个百度音乐网(http://music.baidu.com/) 的歌曲下载辅助工具。biabiamiamia具有如下命令行参数:--artist,指定歌手名;--album,指定专辑名(默认该 歌手 所有专辑);--quality,指定下载歌曲的品质 (320、192、128,默认320kbps,若指定品质不存在则用存在的最高品质替代);--version,显示版本信息;--help,显示本帮助信息。任何BUG,请告知 yangyang.gnu@gmail.com。
【示例】
#下载羽泉的所有专辑,歌曲选用192kbps码率品质
biabiamiamia --artist="羽泉" –quality=192
#下载伍佰的《浪人情歌》专辑,歌曲选用最高码率品质
biabiamiamia --artist="伍佰" --album="浪人情歌"
【下载】
http://code.google.com/p/yangyanggnu/downloads/list
【安装】
构建系统采用 cmake,需要自行提前安装;gcc版本4.6以上。源码安装步骤如下:
tar -xv -f biabiamiamia.tar.gz -C .
cd biabiamiamia/
cmake .
make && make install
【后续】
考虑借助开源OCR库,自动识别验证码。
【注意】
1)biabiamiamia内部调用curl进行下载操作,请自行提前安装;
2)默认下载路径:~/biabiamiamia_music