2017-05-16 52 views
1

我想使用socketIO-client-2庫發出wav文件。不過,我得到這個錯誤:Python SocketIO客戶端發出字節

'ascii' codec can't decode byte 0xac in position 97: ordinal not in range(128)

這是我的代碼的相關部分:

socketIO = SocketIO(IP, PORT, LoggingNamespace) 
data = open('filename.wav', 'rb').read() 
socketIO.emit('message', data[0:640]) 

我使用flask-socketIO在服務器上,像這樣:

socketio = SocketIO(app, binary=True) 

@socketio.on('message') 
def client(data): 
    print data 

回答

0

我認爲它與你的編碼沒有設置爲UTF-8

試試這個:

socketIO = SocketIO(IP, PORT, LoggingNamespace) 
data = open('filename.wav', 'rb').read() 
socketIO.emit('message', unicode(data[0:640],'utf-8')) 
+0

不起作用。使用'binascii.hexlify(data [0:640])'將數據轉換爲ascii格式可用作臨時修訂 – tushar