0
我無法將使用javascript捕獲的圖像轉換爲圖像文件。轉換數據:圖像/ webp; base64到圖像
我正在使用python服務器(python 3 +)。
以下是我的陣營JS代碼捕獲圖像
var React = require ('react')
var Webcam = require('react-webcam')
var Test = React.createClass({
getInitialState:function(){
return {};
},
capture:function(){
var screenshot = this.refs.webcam.getScreenshot();
this.setState({screenshot:screenshot});
console.log("screenshot location is ",screenshot)
},
send_to_server:function(){
RPC.execute("gold.setting","upload_webcam_blob",[this.state.screenshot],{},function(err,data) {
if (err){
alert(err);
return
}
}.bind(this));
},
render:function(){
console.log("apple",this.state)
return <div>
<Webcam ref='webcam'/>
<button onClick={this.capture} >Capture</button>
{ this.state.screenshot ? <img src={this.state.screenshot} /> : null }
<button onClick={this.send_to_server} >Send To Server</button>
</div>;
},
});
module.exports= Test;
截圖的價值是一樣的東西的folliwing data:image/webp;base64,UklGRuYmAABXRUJQVlA4INomAABwPgGdASqAAuA......
我相信這是一個base64編碼。
我發送代碼到python服務器,所以我可以轉換爲圖像並保存。
這裏是我的Python代碼
def upload_webcam_blob(self,blob,context={}):
fh = open("imageToSave.png", "wb")
fh.write(blob.decode('base64'))
fh.close()
updae:上面的代碼不會創建一個文件,但是是空的。 (這段代碼是壞X)
任何人都可以建議我錯過了什麼?或任何正確的方式來轉換圖像並將其從上述格式存儲。
我目前得到錯誤,「AttributeError:'str'對象沒有屬性'decode'」。變量blob是字符串,除了解碼之外,你分割的方式正在工作。任何建議? –
或許解碼不是必需的? –
您可以使用'print(repr(blob))'來複制/粘貼'blob'的內容嗎? –