直接贴代码
:
"""
Author: Joshua
Focus: Bilibili@NBody编程那些事
Description: 利用百度翻译接口, 实现文本转语音
"""
import requests
from pathlib import Path
from argparse import ArgumentParser
def get_tts(text:str, *, lan:str='zh', spd:int=3, output:str='output.mp3', play:bool=False):
"""
text: 文本
lan: 语种
zh 普通话
cte 粤语
spd: 语速 1~N 从慢到快
file: 保存mp3文件的路径
play: 下载完成后立刻播放
"""
url = f'https://fanyi.baidu.com/gettts?lan={lan}&text={text}&spd={spd}&source=web'
file = Path(output).absolute()
with file.open('wb') as f:
f.write(requests.get(url).content)
if play:
playsound(file)
return file
def playsound(file):