Python中文
首页
教程
问答
标签
搜索
登录
注册
使用Python Base64压缩GAE Blob图像?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我把20个随机缩略图的JSON请求拉到一个iPhone应用程序中。目前,我只需在JSON数组中包含图像拇指url(见下文),然后iPhone就会获取每个图像。这真的很慢。在</p> <p>原始JSON请求:</p> <pre> { "item_list": [ { "item_name": "Item One", "user_item_thumb": "http://localhost:8080/i/agpwaGluZ28tYXBwcg4LEghJdGVtVXNlchgPDA/67x67", }, { "item_name": "Item Two", "user_item_thumb": "http://localhost:8080/i/agpwaGluZ28tYXBwcg4LEghJdGVtVXNlchgQDA/67x67", }, { "item_name": "Item Three", "user_item_thumb": "http://localhost:8080/i/agpwaGluZ28tYXBwcg4LEghJdGVtVXNlchgRDA/67x67", } ] } </pre> <p>所以,我想的是在图像数据上使用Base64,并在JSON请求中包含它们,所以iPhone只需要一个请求而不是21个请求。有道理?在</p> <p>那么,我该怎么做呢?<br/> 我试着简单地将下面的图片打印成JSON格式,但是那些都是全尺寸的图片,我需要推一个Base64版本的缩略图。在</p> <p>不工作:</p> <blockquote> <p>f = item.image<br/> f_enc = f.encode('base64')</p> </blockquote> <p>这就是我现在如何得到我的拇指,只是创造他们的飞行。在</p> <blockquote> <p><a href="http://localhost:8080/i/agpwaGluZ28tYXBwcg4LEghJdGVtVXNlchgSDA/67x67" rel="nofollow">http://localhost:8080/i/agpwaGluZ28tYXBwcg4LEghJdGVtVXNlchgSDA/67x67</a></p> </blockquote> <p>这是呈现上述图像请求的原因:</p> ^{pr2}$ <p>任何想法都会令人惊叹。<br/> 如果有更好的办法,我洗耳恭听。在</p> <p>我的问题:<br/> -iPhone在这20张图片中的每一张都很慢<br/> -图像是随机的,所以缓存可能不是一个选项。<br/> -Base64是正确的吗?在</p> <p>谢谢,<br/> 丹尼</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>也许你只需要打电话给<code>read()</code></p> <pre><code>encoded = item.image.read().encode('base64') </code></pre> <p>如果你要处理任何大尺寸的图像,你会希望分块编码(也就是说,<code>read(4096)</code>多次,对每一块进行编码)。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
plt.savefig不会覆盖现有文件
2 回答
plt.savefig不保存图像
4 回答
plt.savefig在jupyter笔记本中不起作用
8 回答
plt.savefig在从另一个fi调用时停止工作
3 回答
plt.savefig在调用plt.show之前保存空数字
7 回答
plt.save不创建png文件
8 回答
plt.scatter overlay分类数据帧列
7 回答
Plt.Scatter:如何添加title、xlabel和ylab
5 回答
plt.scatter()绘图与Matplotlib中的plt.plot()绘图类似
6 回答
plt.scatter错误'NoneType'对象在成功运行后没有属性'sqrt'
7 回答
plt.set_title()中的标题字符串有误
5 回答
plt.show()
4 回答
plt.show()不在Jupyter笔记本上渲染任何内容
10 回答
plt.show()不打印plt.plot only plt.scatter
9 回答
plt.show()不显示三维散射图像
5 回答
plt.show()不显示任何内容
9 回答
plt.show()不显示数据,而是保留它供下一个图表使用(spyder)
7 回答
plt.show()使终端挂起
5 回答
plt.show()无法使用此代码
7 回答
plt.show()没有打开新的图形风
4 回答