效果

文字转语音代码
import requests,os
fl=os.path.join(os.path.expanduser("~"),"Desktop")
ur='https://api.lolimi.cn/API/yyhc/y.php'
s=input("输入")
data={
"msg":s, #字符串
"speake":"纳西妲", #角色 有[空, 荧, 派蒙, 纳西妲, 阿贝多, 温迪, 枫原万叶, 钟离, 荒泷一斗, 八重神子, 艾尔海森, 提纳里, 迪希雅, 卡维, 宵宫, 莱依拉, 赛诺, 诺艾尔, 托马, 凝光, 莫娜]
"noisew":"0.7", #控制音节发音长度变化程度,默认为0.8
"sdp": "", #string Duration Predictor中SDP的占比,此值越大则语气波动越强烈,但可能偶发出现语调奇怪。
"Length": "1", #string 默认为1
"noise": "0.6", #控制感情变化程度,默认为0.6
"type": "2", #string 等于2就直接输出音频
}
gu=requests.get(ur,data)
with open(fl+'/'+s+'.mp3','wb')as f:
f.write(gu.content)
print("音频下载完毕")
gu.close()
完整代码+UI
import requests,os
fl=os.path.join(os.path.expanduser("~"),"Desktop")
ur='https://api.lolimi.cn/API/yyhc/y.php'
# s=input("输入")
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5 import uic
from PyQt5.QtCore import Qt, QPoint
class guWindow(QWidget):
def __init__(self):
super().__init__()
self.gu=uic.loadUi("./原神.ui", self) #加载UI 命名self+任意
# print(self.ui.__dict__) # 查看ui文件中有哪些控件
an = self.gu.pushButton_3 # 按钮
an.clicked.connect(self.gumou) # 给按钮绑定函数
self.gu.lineEdit.returnPressed.connect(self.gumou) #lineEdit回车运行
self.user_name_qwidget = self.gu.lineEdit
# ✦✦✦✦✦✦✦✦✦✦设置无边框 和可拖动✦✦✦✦✦✦✦✦✦✦✦✦✦固定代码
self.gu.setWindowOpacity(0.90) # 设置窗口透明度
self.gu.setWindowFlag(Qt.FramelessWindowHint) # 去除边框
self.gu.setAttribute(Qt.WA_TranslucentBackground) # 去除白色背景
self.offset = QPoint() # 记录鼠标按下的初始位置
def mousePressEvent(self, event):
self.offset = event.pos()
def mouseMoveEvent(self, event):
if event.buttons() == Qt.LeftButton:
self.move(self.pos() + event.pos() - self.offset) # 移动窗口位置
# ✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦
def gumou(self): # 按钮绑定的函数 功能
s = ' '+self.user_name_qwidget.text()
data = {
"msg": s, # 字符串
"speake": "派蒙",
# 角色 有[空, 荧, 派蒙, 纳西妲, 阿贝多, 温迪, 枫原万叶, 钟离, 荒泷一斗, 八重神子, 艾尔海森, 提纳里, 迪希雅, 卡维, 宵宫, 莱依拉, 赛诺, 诺艾尔, 托马, 凝光, 莫娜]
"noisew": "0.8", # 控制音节发音长度变化程度,默认为0.8
"sdp": "", # string Duration Predictor中SDP的占比,此值越大则语气波动越强烈,但可能偶发出现语调奇怪。
"Length": "1", # string 默认为1
"noise": "0.6", # 控制感情变化程度,默认为0.6
"type": "2", # string 等于2就直接输出音频
}
gu = requests.get(ur, data)
with open(fl + '/' + s + '.mp3', 'wb') as f:
f.write(gu.content)
print("音频下载完毕")
gu.close()
self.user_name_qwidget.clear()
if __name__ == '__main__':
app = QApplication(sys.argv)
# 创建可拖动窗口实例
ui = guWindow() #函数
# 显示窗口
ui.show()
# 启动应用程序事件循环
sys.exit(app.exec_())