简体   繁体   English

Python 将文本转换为mp3

[英]Python Convert text to mp3

Hi I am scraping data from a website and converting text to mp3 but every time it give me this error:嗨,我正在从网站上抓取数据并将文本转换为 mp3,但每次它都会给我这个错误:

Traceback (most recent call last):
  File "/home/awais/.local/lib/python2.7/site-packages/flask/app.py", line 2447, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/awais/.local/lib/python2.7/site-packages/flask/app.py", line 1952, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/awais/.local/lib/python2.7/site-packages/flask/app.py", line 1821, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/home/awais/.local/lib/python2.7/site-packages/flask/app.py", line 1950, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/awais/.local/lib/python2.7/site-packages/flask/app.py", line 1936, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/awais/Desktop/sipgateio-incomingcall-python-master/incoming_call/__main__.py", line 93, in handle_on_dtmf
    ttmp3.save("bbc.mp3")
  File "/home/awais/.local/lib/python2.7/site-packages/gtts/tts.py", line 295, in save
    self.write_to_fp(f)
  File "/home/awais/.local/lib/python2.7/site-packages/gtts/tts.py", line 272, in write_to_fp
    raise gTTSError(tts=self)
gTTSError: Failed to connect. Probable cause: Host 'https://translate.google.en/' is not reachable

This is what my code look like:这是我的代码的样子:

URL = requests.get("https://www.bbc.co.uk/news")

    soup = BeautifulSoup(URL.text, 'html.parser')


    headlines = soup.select(".gs-c-promo-heading__title")
    all = ""
    for h in headlines:
        h=h.text
        h = h.encode('ascii', 'ignore').decode('ascii')
        all = str(all) + "  " + str(h)
    print(all)
    ttmp3 = gTTS(all, "en")
    ttmp3.save("bbc.mp3")

I am stuck here for last 1 day, please help me我在过去 1 天被困在这里,请帮助我

Thank you very much guys, I resolved it by changing this parameter:非常感谢大家,我通过更改此参数解决了它:

ttmp3 = gTTS(text=all,lang="en",tld="com")

By putting tld="com" we can fix it通过输入 tld="com" 我们可以修复它

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM