我一直在尝试编写一个脚本,按照概述的方式为图像绘制页面 " Save all image files from a website"
我用另一个页面测试了该方法并且它工作正常,但是在插入我的链接以获取数据时:图像URI,如下所示:
data:image/jpg;base64,/9j/4FEJFOIEJNFOEJOIAD//gAQTGFGRGREGg2LjEwMAD/2wBDAAgEBAQEREGREWGRWEGUFBQYGBgYGBgYGB...
我收到以initialize': File name too long
开头并以(Errno::ENAMETOOLONG)
结尾的错误。
有没有人找到办法处理这样的情况?
答案 0 :(得分:0)
data:image
网址实际上将图片内嵌为基本64.您需要做的就是获取该数据并decode:
require 'base64'
File.open(File.basename(uri),'wb'){ |f| f.write(Base64.decode64(url[/base64,(.*)/, 1])) }