1. 程式人生 > >Python帶你朗讀網頁!想咋看就咋看!

Python帶你朗讀網頁!想咋看就咋看!

網址 stop 程序 百度 tts apt-get line rds ima

萬能的Python大法可以做很多有趣的事情,那我們今天來看看使用簡單的Python來實現對一個網頁的朗讀吧!

首先我們需要裝一些必要的庫:

readability

它是用來提取網頁內的內容的

pip install readability-lxml

Python很容易學!所以小編有弄一個交流,互問互答,資源共享的交流學習基地,如果你也是Python的學習者或者大牛都歡迎你來!?:548+377+875!一起 學習共同進步!

技術分享圖片

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)

定義函數:文字轉化成聲音:

技術分享圖片

定義從網頁獲取文章的函數:

技術分享圖片

將音頻文件合並:

技術分享圖片

下面我們就可以運行我們的程序了:

技術分享圖片

Python帶你朗讀網頁!想咋看就咋看!