gTTS HTTPError:403客户端错误:禁止访问网址

时间:2016-05-12 03:03:43

标签: python-3.x

之前我对gTTS没有任何问题:

import gtts

stop = ('My voice!')
tts = gtts.gTTS(text=stop, lang='en')
tts.save("D:\\path\\Voice.mp3")

但突然出现了错误:

Traceback (most recent call last):
  File "D:/folder1/project/prog1.py", line 6, in <module>
    tts.save("D:\\project\\Voice.mp3")
  File "C:\Users\User\AppData\Local\Programs\Python\Python35-32\lib\site-packages\gtts-1.1.4-py3.5.egg\gtts\tts.py", line 94, in save
  File "C:\Users\User\AppData\Local\Programs\Python\Python35-32\lib\site-packages\gtts-1.1.4-py3.5.egg\gtts\tts.py", line 118, in write_to_fp
  File "C:\Users\User\AppData\Local\Programs\Python\Python35-32\lib\site-packages\requests-2.9.1-py3.5.egg\requests\models.py", line 840, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 403 Client Error: Forbidden for url: https://translate.google.com/translate_tts?q=SAY+YES%21&tk=834753.692152&tl=en&total=1&client=t&idx=0&ie=UTF-8&textlen=8

不太懂,如何弄清楚这个问题

我升级了gTTS

pip安装gTTS - 升级gTTS

但得到同样的错误。

编辑:------------------------------------------ ---------------------------------

解决方案来源:https://github.com/pndurette/gTTS/issues/32

在我的情况下也一样:

C:\用户\用户\应用程序数据\本地\程序\的Python \ Python35-32 \ LIB \站点包\这些GTT

tts.py

中的

第105行

并将 client=t 更改为 'client' : 'tw-ob',

1 个答案:

答案 0 :(得分:0)

我安装了gtts软件包,并且能够复制此问题。在这种情况下,gtts包使用的Google翻译网址不再有效(它返回403 HTTP错误)。这应该被报告为gtts软件包维护者的错误,因为看起来谷歌的文本到语音API已经改变(或破坏)。

编辑:此问题有already been reported

相关问题