arrays - 在不更改 Python 3 中的数据的情况下从字符串转换为字节
问题描述
我想.wav
使用 python 3 从网站下载二进制数据(文件)。
我能够将二进制数据作为字符串获取,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)
,但没有帮助。
如何正确转换下载二进制数据并将其保存到文件而不更改它?
解决方案
根据请求文档,您可以使用内容而不是文本以字节形式访问响应正文。我建议你试一试。
import request
waveurl = 'http://www ..... /song.wav'
res = requests.get(waveurl)
with open("song.wav, "wb") as f:
f.write(res.content)
我还没有测试过这个选项,我的意思是为你提供一个起点。
推荐阅读
- appium - 使用 appium 和 python 在 AWS Device Farm 中创建 WDA 会话问题失败
- splunk - 根据时间表表中的行值按降序对 splunk 时间表表进行排序
- mysql - 尝试使用加入、计数和分组,但没有按我的意愿工作
- xamarin - Xamarin:如何将项目添加到 CollectionView 中的现有组
- python - 如何优化 pandas 中的 apply 函数以计算 levenshtein 距离?
- kotlin - Kotlin - 枚举类,如何知道条目映射到什么类型的值?
- javascript - 如何将打字稿更改为javascript
- javascript - 如何检查字符串是否完全由定义的子字符串组成
- java - `NativeWebRequest` 在使用 Spring Boot 的传入请求中为空
- javascript - 删除元素的css类