Не удается получить правильный HTML-контент и аудиофайлы, когда я использую Google Translate TTS API

У меня есть некоторые проблемы с заголовком ответа браузера и аудиофайлами, когда я использую Google Translate TTS API для получения аудиоинформации.

Моя компьютерная система — Windows 10, и я использую Python 2.7.12.

Мой тестовый URL-адрес API: http://translate.google.com/translate_tts?tl=en&q=student&total=1&idx=0&client=tw-ob

Мой код

response = requests.get(tts_url, headers=headers,timeout=2)
print response.content
print response.status_code

response.status_code это 200. Однако response.content и response.text искажены.

Когда я пишу код

print response.encoding

Результат

None

Затем я открываю инструмент разработчика Chrome, чтобы просмотреть заголовки ответов страницы. Я не нахожу Content-Encoding. Картина

Заголовки ответа

Заголовки запроса

ТАК Я не знаю, как расшифровать response.text и response.content

При этом пишу output.write(response.content). output — это mp3-файл. Потом открываю мп3 файл, а голос не полное произношение. Я думаю, что у файла должна быть какая-то ошибка с кодировкой.

Поэтому я не знаю, как решить эту проблему, и я не знаю, как преобразовать response.text или response.content в правильный формат для правильного воспроизведения файла mp3.


person RZdiversity    schedule 11.08.2016    source источник
comment
Моя компьютерная система — Windows 10, и я использую Python 2.7.12 для кода. URL моего тестового API: ссылка   -  person RZdiversity    schedule 11.08.2016
comment
Я думал, что это заблокировано, если вы не используете хак stackoverflow.com/q/32053442/1256219   -  person brandall    schedule 12.08.2016


Ответы (1)


полезная нагрузка ответа представляет собой двоичный файл, поэтому убедитесь, что вы записываете контент как двоичные данные, а не как текст.

person Guy Rotem    schedule 19.11.2016