网页webp转非webp的jpg gif png 图片
webp 谷歌提出的一种图片格式。
支持动图: gif
静图: png jpg
网页 webp / jpg / gif / png 图片提取。
已在微信、淘宝、京东、一号店上测试通过。
如果电脑上有 chrome 内核浏览器的话是支持 webp 的,没有的话就无法查找这种格式了。但大多数网站其实都提供了相应 jpg ,一般只要改下文件名就可以了。
总结下主要方式,各个网站的 webp 图:
淘宝的:
https://img.alicdn.com/tps/i2/TB1XN66MpXXXXXyXFXXj64lTXXX-200-200.jpg_100x100q90.jpg_.webp
有不同尺寸,甚至格式。如上条链接中有200-200.jpg和100x100q90.jpg的图。从下划线_阶段可得到不同尺寸的图。
微信的:
http://mmbiz.qpic.cn/mmbiz_gif/5jiagcxMqZxibYXxGUXNf8gRCiapA1W8gQkGIdB7tLYYXLf07nnZb594M3Y8XLWIITEgvhhWKrDrrEETAvTTzbuzA/0?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1
很明显:wx_fmt=gif 里的 gif 表示了图片的源格式是gif。
其他的:
一般都是把后缀改为源格式即可。

v0.1
//webp转jpg保存器v0.1 by 小文 2016-12-26
//可能出来的格式, jpeg 没有列出。
var jpg='.jpg'
var png='.png'
var gif='.gif'
var webp=$$("[src$='.webp']"); //所有 webp 对象
var suc=0; //成功提取到的数量
var itg=''; //目标
var exe=''; //当前处理的格式
var oth=''; //没有提取的格式
var msg=''; //输出信息
var sty='style="width:50px;height:50px;padding:4px;border:1px dashed #ccc"'; //附加样式 for(var i=0;i<webp.length;i++){
var src=webp[i].src
if(src.lastIndexOf(jpg)!=-1){
exe=jpg; suc++;
}else if(src.lastIndexOf(png)!=-1){
exe=png; suc++;
}else if(src.lastIndexOf(gif)!=-1){
exe=gif; suc++;
}else{
oth+='<img '+sty+ 'src="'+src+'">';
}
if(src.lastIndexOf(jpg)!=-1||src.lastIndexOf(png)!=-1||src.lastIndexOf(gif)!=-1){
src=src.substring(0,src.lastIndexOf(exe)+4);
itg+='<img '+sty+ 'src="'+src+'">';
}
} if(webp.length==suc){
msg='<hr>已全部提取:<hr>'+itg+'<hr>'
}else{
msg='<hr>已提取:<hr>'+itg+'<hr>未提取:<hr>'+oth
};
msg="<hr>总数:"+webp.length+"<br>成功:"+suc+"<br>失败:"+(webp.length-suc)+msg window.open().document.write(msg)
v0.3
更新了下,支持微信及直接改后缀如一号店方式:
//webp转jpg保存器v0.3 by 小文 2016-12-26
//可能出来的格式, jpeg 没有列出。
var jpg='.jpg'
var png='.png'
var gif='.gif'
var webp=$$("[src*='&tp=webp']")[0] ? $$("[src*='&tp=webp']") : $$("[src$='.webp']"); //所有 webp 对象
var suc=0; //成功提取到的数量
var itg=''; //目标
var exe=''; //当前处理的格式
var oth=''; //没有提取的格式
var oth2=''; //特殊情况,直接修改后缀
var msg=''; //输出信息
var sty='style="width:50px;height:50px;padding:4px;border:1px dashed #ccc"'; //附加样式 for(var i=0;i<webp.length;i++){
var src=webp[i].src
//淘宝
if(src.lastIndexOf(jpg)!=-1){
exe=jpg;
}else if(src.lastIndexOf(png)!=-1){
exe=png;
}else if(src.lastIndexOf(gif)!=-1){
exe=gif;
}else{
oth+='<img '+sty+ 'src="'+src+'">';
//一号店等特殊情况,直接改后缀
oth2+='<img onerror="console.log(this);this.style.display=\'none\'"'+sty+ 'src="'+src.substring(0,src.lastIndexOf('.webp'))+'.jpg'+'">';
oth2+='<img onerror="console.log(this);this.style.display=\'none\'"'+sty+ 'src="'+src.substring(0,src.lastIndexOf('.webp'))+'.gif'+'">';
oth2+='<img onerror="console.log(this);this.style.display=\'none\'"'+sty+ 'src="'+src.substring(0,src.lastIndexOf('.webp'))+'.png'+'">';
}
var b1=Boolean(src.lastIndexOf(jpg)!=-1||src.lastIndexOf(png)!=-1||src.lastIndexOf(gif)!=-1)
if(b1){
src=src.substring(0,src.lastIndexOf(exe)+4);
itg+='<img '+sty+ 'src="'+src+'">';
suc++;
}else if($$("[src*='&tp=webp']")[0]){
//腾讯
itg+='<img '+sty+ 'src="'+webp[i].src.substring(0,webp[i].src.lastIndexOf('&tp=webp'))+'">';suc++
}
} if(webp.length==suc){
msg='<hr>已全部提取:<hr>'+itg+'<hr>'
}else{
msg='<hr>已提取:<hr>'+itg+'<hr>未提取:<hr>'+oth
};
msg="总数:"+webp.length+"<br>成功:"+suc+"<br>失败:"+(webp.length-suc)+msg+"<hr>特殊提取:<hr>"+oth2 window.open().document.write(msg)
网页webp转非webp的jpg gif png 图片的更多相关文章
- webp怎么打开 webp怎么转换成jpg
webp怎么打开 webp怎么转换成jpg 2 3 4 5 6 7 分步阅读 在使用google服务的时候(比如 google play),我们会发现保存的图都是webp格式. 那webp是什么东 ...
- 爬虫入门(三)——动态网页爬取:爬取pexel上的图片
Pexel上有大量精美的图片,没事总想看看有什么好看的自己保存到电脑里可能会很有用 但是一个一个保存当然太麻烦了 所以不如我们写个爬虫吧(๑•̀ㅂ•́)و✧ 一开始学习爬虫的时候希望爬取pexel上的 ...
- 纯html实现将网页页面分享到微信朋友圈添加缩略图图片的方法
在分享页面中的body中最前面添加一个隐藏的div,里面放一个300*300的正方形图片即可:如下 <div style="display:none"><img ...
- 车标知识学习网页开发,与Flask通过base64展示二进制图片 #华为云·寻找黑马程序员#
万法同源 一直觉得可能自己不太适合搞技术,更适合在天桥底下支个摊子说书.技术的东西从来没人关注,扯东扯西的文章莫名的火.之前的一篇文章MarkDown添加图片的三种方式不管是在技术为主的CSDN还是娱 ...
- WebP 原理和 Android 支持现状介绍(转)
本文为腾讯Bugly开发者社区 投稿,作者:soonlai,版权归原作者所有,未经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/582939577ef9c5b70855 ...
- 【腾讯Bugly干货分享】WebP原理和Android支持现状介绍
本文来自于腾讯bugly开发者社区,未经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/582939577ef9c5b708556b0d 1.背景 目前网络中图片仍然是占 ...
- WebP 文件及其编码解码工具(WebPconv)
1. webp 文件 与JPEG相同,WebP 是一种有损压缩利用预测编码技术. WebP 是 Google 新推出的影像技术,它可让网页图档有效进行压缩,同时在质量相同的情况下,WebP 格式图像的 ...
- WebP 极限压缩及ios实现
WebP 极限压缩及ios实现 Levi.duan 会议提纲 概念以及定义 什么是Webp ? WebP (发音 weppy ),是一种同时提供了有损压缩与无损压缩的图片文件格式,是Google新 ...
- 【原】webp图片牛刀小试
其实今年很早就有接触到webp图片的概念,只是一直没怎么弄.今天在一个小项目中小用了一番.总结总结 采用 what,why,how的方式来总结 what? 什么是webp图片? 维基百科: ...
随机推荐
- hellocharts包的使用心得
首先将jar包导入Libs里面然后add进入于activity中调用 xml中加入布局 <lecho.lib.hellocharts.view.LineChartView android:id= ...
- Jekyll 安装权限问题 ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/jekyll
OS X El Capitan 新特性(System Integrity Protection or SIP)中加强了权限,但是可以对这里进行操作 /usr/local/bin 可以尝试使用以下指令进 ...
- 优化curl并发使用
经典curl并发的处理流程:首先将所有的URL压入并发队列, 然后执行并发过程, 等待所有请求接收完之后进行数据的解析等后续处理. 在实际的处理过程中, 受网络传输的影响, 部分URL的内容会优先于其 ...
- bzoj 刷水
bzoj 3856: Monster 虽然是sb题,,但是要注意h可能<=a,,,开始忘记判了WA得很开心. #include <iostream> #include <cst ...
- js ---- 时间格式
Js获取当前日期时间及其它操作 var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); ...
- JQuery的父、子、兄弟节点查找方法
jQuery.parent(expr) //找父元素 jQuery.parents(expr) //找到所有祖先元素,不限于父元素 jQuery.children ...
- C# winform treeView checkbox全选反选
private void treeView2_AfterCheck(object sender, TreeViewEventArgs e) { if (e.Acti ...
- [转]Tesseract 3.02中文字库训练
下载chi_sim.traindata字库下载tesseract-ocr-setup-3.02.02.exe 下载地址:http://code.google.com/p/tesseract-ocr/d ...
- 实践Html5的上传文件
技术点: 1.通过input的change事件获取文件信息: onchange = function() { this.files } 这个files属性是htmlInputElement接口的属性, ...
- ASP.NET关于对excel数据导入到数据库
//*******************************C#(UI代码)********************************/ Web界面上放一个FileUpload 名称为:F ...