话说,Android开发的时,很多的应用已经将png或jpg改为了Webp格式,一个目的是为了减少包的体积,我觉得还有一个好处是资源包的安全考虑,不过我如果要反编译人家的apk,并拿到图片资源就比较恶心。这不,我今天想仿下网易严选,不过反编译后,发现图片都是webp格式的。心里想着,能不能使用Python编写一个一键转换工具呢?
答案是肯定的,由于Python不区分具体的系统,只要你搭建好Python环境,就可以执行Python脚本。
由于我使用的是Mac系统,所以首先使用homebrew安装一个插件webp,命令如下:
brew install webp
然后编写一个Python脚本,用于将Webp批量转换为png或jpg。
#!/bin/bash
function getdir(){
compareName='.webp';
for element in `ls $1`
do
dir_or_file=$1"/"$element
if [ -d $dir_or_file ]
then
getdir $dir_or_file
else
# echo ${dir_or_file##*.}
if [ ${dir_or_file##*.} = 'webp' ]
then
newname=${dir_or_file%.*}
dwebp $dir_or_file -o ${newname}".png" #如果要转换成jpg 将png换成jpg即可
rm -f $dir_or_file
echo "dwebp转换 "${dir_or_file}" 到 "${newname}
fi
fi
done
}
root_dir="/Users/xiangzhihong/Downloads/yanxuan/res/mipmap-xxhdpi-v4"
getdir $root_dir
这里的root_dir的路径需要改为你自己的,然后将文件保存为webp.sh(windows是webp.bat),然后执行这个文件即可,如下图:
看到一堆转换的输出日志,等待执行完成,在去看之前的文件,就发现全部转换成了png,顿时对Python顶礼膜拜!!!
本文同步分享在 博客“xiangzhihong8”(CSDN)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。