點贊,轉發加關注和私信,獲取源代碼!
在介紹爬取音頻數據前,先大概說說做爬蟲應該知道和應該會知識。
一、爬蟲的對象?
HTML網頁
二、網頁的構成
為什么要了解網頁構成?因為爬取網頁中的數據前,
首先要確定目標數據是以何種形式存在于網頁中,例如:文本、圖片,還是標簽屬性等;
其次要確定目標數據在網頁源代碼中的位置,找到網頁中元素排布規律,并分析其帶有的特殊標識,從而達到提取目標數據的目的;
一般網頁由三部分構成:HTML、CSS和JavaScript。
1). HTML 構成網頁基本骨架,是網頁內容的載體。用戶端網頁內容包含文字、圖片、視頻等。
2).CSS 起到修飾HTML的作用,用來改變內容外在表現,是網頁的外在表現。能夠修改字體、修改顏色、處理圖片、超鏈接等,使網頁顯示效果豐富多彩。
3).Javascript可以實現各種動態交互效果。例如:動態交互圖表、滾動翻頁效果、鼠標拖動軌跡等。
圖1
圖2:
圖3
表1中各個代碼標簽的意義如下表:
表1
3. HTML常用標簽:了解常用標簽的使用方式,可以快速定位爬取數據的位置提供參考。
3.1 網頁標題:不會在HTML文檔中直接顯示,會顯示在瀏覽器中作為網頁的標識。
<title> 網頁標題</tittle>
3.2 HTML文件各級標題:
<h1>一級標題</h1>
<h2>二級標題</h2>
<h3>三級標題</h3>
3.3 段落: <p>這是一個段落</p>
3.4 超鏈接:<a href="http://www.xxx.com/"> <a>
hrnef屬性存放的是超鏈接要跳轉到的目標網址<a href="http://www.xxx.com/"> <a>。
target屬性決定點擊該超鏈接后,目標網頁會在何處顯示;例如在新窗口打開<a href="http://www.xxx.com/" target="_blank">xxx<a>; 在當前窗口或框架中打開<a href="http://www.xxx.com/" target="_self">xxx<a>; 在當父窗口中打開<a href="http://www.xxx.com/" target="_parent">xxx<a>;
name屬性為超鏈接添加標簽名;例如<a href="http://www.xxx.com/" name="xxx">xxx<a>;
3.5 圖像:<img src="圖片源地址”>
3.6 表格:<table> </table>
3.7 div元素和span元素:div元素是一種塊級元素,可以作為其他元素的容器。span元素是內聯元素,通常是文本容器。
3.8 注釋:<!--這是一段注釋-->
3.9 其他如表格,CSS等,可百度了解;
三、利用Python requests模塊下載目標網頁相關內容
1.安裝requests模塊:pip install requests
2.程序基本思路:
""" 程序思路:
#1. 找到網站網址.
#2. 向網站發送獲取數據的請求
#3. 篩選數據 運用正則表達式篩選音效名字
#4. 運用正則表達篩選鏈接
#5. 下載及儲存數據 """
3. 在瀏覽器中輸入目標網址打開網頁,在網頁鼠標右鍵下拉菜單中選擇 “檢查” ,
再點選“Network”,在“requests Headers”找到User Agent復制內容;
代碼:headers={‘User Agent’:‘復制內容’},目的偽裝瀏覽器請求頭訪問網頁;
實現代碼:
# 1.找到需要爬取的網站網址
url='https://www.xxx.com/xxx.html'
# 偽裝成瀏覽器的請求頭
headers={
'User-Agent': "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Mobile Safari/537.36"
}
# 2.向網站發送獲取數據的請求
res=requests.get(url, headers=headers)
圖4
圖5 :Network
4. 在“element”中找到需要爬取的音頻數據及規律,代碼: reg=正則表達式;
reg='<source src=".*?" type="audio/mpeg">'
urls=re.findall(reg, res.text)
圖6
5. 使用循環語句下載音頻;
for url, name in zip(urls, names):
# print("https:"+url)
# 下載數據
music=requests.get("http:"+url, headers)
# 儲存到本地路徑音效下
with open("./音效/"+name+".mp3", "wb") as f:
f.write(music.content)
print('<%s,下載成功>' % names)
教材編制不易,希望能幫助到更多有興趣的學習者,讓工作和學習順利進行;請您點贊轉發及關注,后續將分享學習心得,讓更多學習者使用。非常感謝!
作者:關中老玉米
日期:2021年01月08日
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
每次給視頻配音都非常痛苦,久而久之我就積攢了很多的音頻素材網站,今天就給大家分享6個私藏已久的音頻資源網站,質量高又免費,且用且珍惜。
https://www.tosound.com/
這個網站可以查找全網不同站源的聲音素材,包含不同風格的音樂、音效,資源非常豐富!提供了聲音的來源出處,讓我們可以自由挑選無版權素材,避免侵權問題。
https://icons8.com/music
這是一個的音樂資源豐富的素材庫,雖然是國外網站,當可以搭配翻譯插件使用。歌曲按照類別、流派進行劃分,你也可以輸入關鍵詞搜索,全部音樂都可以試聽下載。
https://sucai.zhiyu.art/music
這個資源網站比較全面,圖片、視頻、音樂、音效等素材,都可以免版權使用。目前有233個音樂素材和663個音效素材,支持試聽,你可以按照類型、情緒進行篩選。
https://taira-komori.jpn.org/freesoundcn.html
這個網站里的所有音效,都是可以免費下載的,里面的聲音分類非常的多,聲音也非常逼真。有人的聲音、動作聲、動物的聲音、自然界的各種聲音,應有盡有。
https://mixkit.co/
這個網站可以頂三個用!因為它不僅是視頻素材網站,還是音樂的素材網站和PR模板素材網站。音樂專區的音樂也非常的多,還有聲音特效,都是可以免費下載的。
https://muhou.net/mouse-c_down
這是國內為數不多的免費資源共享站,里面提供了音樂素材,主要都是各種聲音合集,適用于各類場景。但是這些音效都是在視頻中,想要獲取音頻,需要格式轉換。
通常我們會用到【迅捷音頻轉換器】,上面有個“音頻提取”功能,將保存的視頻添加進去,就能自動分離出音頻了。
如果平時你下載的音頻素材無法播放,很有可能是格式不兼容,也可以用這款工具,將音頻通通轉換成常用的mp3格式,就能正常播放使用啦。
最美尾巴:
以上就是我今天分享的內容,如果大家覺得有用,記得點贊告訴我,我會繼續分享更多優質的內容。
上面這6個私藏已久的音頻資源網站,質量高又免費,還請大家且用且珍惜呀。
一、HTML確實給了我們很多好東西,包括audio標簽。
二、我們改改,src屬性就不要了,加個controls,它是控制的意思,可以顯示音頻控制。
三、點了,可是沒有歌呀,加歌進去吧,隨便下載一首歌。
四、你會發現播放和暫停可以點擊,還有進度條的拖動,都是可以用的,可如果你不喜歡那個按鈕,又怎么自己做按鈕來控制呢。
五、改成兩個圓形按鈕。
六、補點東西吧,audio標簽也應該有個id,然后再加兩個按鈕的點擊事件。
七、完成最后一步,讓按鈕可以控制audio。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。