萬能的Python大法可以做很多有趣的事情,那我們今天來看看使用簡單的Python來實現對一個網頁的朗讀吧!
首先我們需要裝一些必要的庫:
readability
它是用來提取網頁內的內容的
pip install readability-lxml
goose
它是一個文章提取器,我們用它來進行文章的提取
pip install goose3
baidu-aip
百度提供的 Python SDK, 接口文檔: http://ai.baidu.com/docs#/TTS-Online-Python-SDK/top 。
pip install baidu-aip
對于百度的SDK我們也來簡單的教大家用一下:
瀏覽器輸入網址登陸: https://cloud.baidu.com/?from=console
找到語音識別:
點進去創建應用:
輸入一些有用的創建信息:
回到管理控制臺,獲取應用的APPID,apikey,secretkey:
寫代碼的時候會用到,來調用這個接口
pydub
它可以用來生成音頻文件, 在 Windows 環境需要到 https://ffmpeg.zeranoe.com/builds/ 下載 FFmpeg,并將其配置到環境變量中 (如果是使用ubuntu系統,還需要再安裝下依賴 apt-get install libav-tools )
需要在 AudioSegment 這個類中,把變量 converter換成ffmpeg的路徑:
pip install pydub
playsound
播放音頻文件用到的包
pip install playsound
現在所有的包都安裝完畢了,我們可以來安心敲代碼了,完成網頁到音頻的轉換。
首先導入用到的包:
import uuid
import re
import os
import argparse
from pydub import AudioSegment
from aip import AipSpeech
from playsound import playsound
from goose3 import Goose
from goose3.text import StopWordsChinese
調用百度語言的api,傳入APP_ID, API_KEY, SECRET_KEY:
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
定義函數:文字轉化成聲音:
定義從網頁獲取文章的函數:
將音頻文件合并:
下面我們就可以運行我們的程序了:
感興趣的掃個二維碼吧!
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
