我想使用python 3从网站下载二进制数据(.wav
文件)。
我能够使用requests.get
将二进制数据作为字符串获取,但是当我尝试将其写入文件时,数据已更改且保存的文件不正确:
import requets
waveurl = 'http://www ..... /song.wav'
res = requests.get(waveurl)
with open("song.wav, "wb") as f:
f.write(bytes(res.text)
我也尝试使用struct.pack("B",each_byte)
,但没有帮助。
如何正确转换下载并将二进制数据保存到文件而不更改它?
答案 0 :(得分:0)
根据请求文档,您可以使用内容而不是文本访问response body as bytes。我建议你尝试一下。
import request
waveurl = 'http://www ..... /song.wav'
res = requests.get(waveurl)
with open("song.wav, "wb") as f:
f.write(res.content)
我还没有测试过这个选项,我的意思是为你提供一个起点。