乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Python爬蟲新手入門教學(xué)(十六):爬取網(wǎng)站音樂素材

       行者花雕 2021-05-05

      前言

      本文的文字及圖片來源于網(wǎng)絡(luò),僅供學(xué)習(xí)、交流使用,不具有任何商業(yè)用途,如有問題請(qǐng)及時(shí)聯(lián)系我們以作處理。

      Python爬蟲、數(shù)據(jù)分析、網(wǎng)站開發(fā)等案例教程視頻免費(fèi)在線觀看

      https://space.bilibili.com/523606542

      前文內(nèi)容

      Python爬蟲新手入門教學(xué)(一):爬取豆瓣電影排行信息

      Python爬蟲新手入門教學(xué)(二):爬取小說

      Python爬蟲新手入門教學(xué)(三):爬取鏈家二手房數(shù)據(jù)

      Python爬蟲新手入門教學(xué)(四):爬取前程無憂招聘信息

      Python爬蟲新手入門教學(xué)(五):爬取B站視頻彈幕

      Python爬蟲新手入門教學(xué)(六):制作詞云圖

      Python爬蟲新手入門教學(xué)(七):爬取騰訊視頻彈幕

      Python爬蟲新手入門教學(xué)(八):爬取論壇文章保存成PDF

      Python爬蟲新手入門教學(xué)(九):多線程爬蟲案例講解

      Python爬蟲新手入門教學(xué)(十):爬取彼岸4K超清壁紙

      Python爬蟲新手入門教學(xué)(十一):最近王者榮耀皮膚爬取

      Python爬蟲新手入門教學(xué)(十二):英雄聯(lián)盟最新皮膚爬取

      Python爬蟲新手入門教學(xué)(十三):爬取高質(zhì)量超清壁紙

      Python爬蟲新手入門教程(十四):爬取有聲小說網(wǎng)站數(shù)據(jù) 

      Python爬蟲新手入門教學(xué)(十五):Python爬取某音樂網(wǎng)站的排行榜歌曲

      基本開發(fā)環(huán)境

      • Python 3.6

      • Pycharm

      相關(guān)模塊的使用

      import osimport concurrent.futuresimport requestsimport parsel

      安裝Python并添加到環(huán)境變量,pip安裝需要的相關(guān)模塊即可。

      一、確定需求

      找不到合適的音頻素材?Python批量爬取音頻素材網(wǎng)站


      雖然上面顯示需要付費(fèi)下載,但是一樣可以免費(fèi)下載。

      二、網(wǎng)頁數(shù)據(jù)分析

      打開開發(fā)者工具,點(diǎn)擊播放音頻,在Media中會(huì)加載出音頻的url地址。

      找不到合適的音頻素材?Python批量爬取音頻素材網(wǎng)站


      如果想要驗(yàn)證這個(gè)鏈接是否是音頻的真實(shí)下載地址,可以復(fù)制鏈接粘貼到新的窗口中。

      找不到合適的音頻素材?Python批量爬取音頻素材網(wǎng)站


      它會(huì)自動(dòng)下載一個(gè)音頻文件。并且這個(gè)音頻文件是可以播放的,和網(wǎng)頁上面的音頻聲音是可以對(duì)上的。
      事實(shí)證明這個(gè)就是我們要獲取音頻地址。

      找不到合適的音頻素材?Python批量爬取音頻素材網(wǎng)站
      https://downsc./Files/DownLoad/sound1/202102/s830.mp3

      老思路了,復(fù)制鏈接中的某些參數(shù)在開發(fā)者工具中進(jìn)行搜索,很明顯 s830 就是音頻的ID了。

      找不到合適的音頻素材?Python批量爬取音頻素材網(wǎng)站


      搜索 s830 找到來源,發(fā)現(xiàn)網(wǎng)頁頁面中自帶有下載地址。獲取音頻下載地址之后需要自己拼接url。

      網(wǎng)頁數(shù)據(jù)不復(fù)雜,相對(duì)而言還是比較簡(jiǎn)單的。
      1、請(qǐng)求當(dāng)前網(wǎng)頁數(shù)據(jù),獲取音頻地址以及音頻標(biāo)題
      2、保存下載就可以了

      三、代碼實(shí)現(xiàn)

      獲取音頻ID以及音頻標(biāo)題

      def main(html_url):
          html_data = get_response(html_url).text
          selector = parsel.Selector(html_data)
          lis = selector.css('#AudioList .container .audio-item')for li in lis:
              name = li.css('.name::text').get().strip()
              src = li.css('audio::attr(src)').get()
              audio_url = 'https:' + src
              save(name, audio_url)print(name, audio_url)

      保存數(shù)據(jù)

      def save(name, audio_url):
          header = {'Upgrade-Insecure-Requests': '1','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'}
          audio_content = requests.get(url=audio_url, headers=header).content
          path = 'audio\\'if not os.path.exists(path):
              os.mkdir(path)
          with open(path + name + '.mp3', mode='wb') as f:
              f.write(audio_content)

      這里想要重新給一個(gè)headers參數(shù),不然會(huì)下載不了。代碼會(huì)一直運(yùn)行,但是沒有反應(yīng)

      多線程爬取

      if __name__ == '__main__':
          executor = concurrent.futures.ThreadPoolExecutor(max_workers=5)for page in range(1, 31):
              url = f'https://sc.chinaz.com/yinxiao/index_{page}.html'# main(url)executor.submit(main, url)
      找不到合適的音頻素材?Python批量爬取音頻素材網(wǎng)站
      找不到合適的音頻素材?Python批量爬取音頻素材網(wǎng)站

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多