校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 如何用Python一次性下載抖音上音樂

如何用Python一次性下載抖音上音樂

熱門標簽:白銀外呼系統 廣告地圖標注app 激戰2地圖標注 唐山智能外呼系統一般多少錢 騰訊外呼線路 海南400電話如何申請 陜西金融外呼系統 公司電話機器人 哈爾濱ai外呼系統定制

Python 鏈接抖音

python下載抖音內容的帖子網上有一些,但都比較麻煩,需要通過adb連接安卓手機后,模擬操作。我這么懶,這種事兒玩不來…那么,該如何獲取抖音內容呢?網上搜了下大概有兩種方式,一個是瀏覽器插件快抖,另外一個是我今天要說的抖音網頁版。其實這兩者差別不是很大,都是先將抖音內容下載至服務器后,通過開發簡單網站配置域名后,讓大家訪問。讓我們來看看抖音網頁版:

爬蟲實現分析

熱歌榜內容

大家先開看看這個抖音熱歌榜歌曲,每頁20首歌曲,一個55頁。但細不細心大家都能發現,很多歌曲存在重復的問題。所以,等下爬蟲的時候,我們需要先準備一個music_list,用來識別這首歌曲是否已經下載過了…

網頁解析

網頁比較簡單,一個div中包裹了一個ul>li*20,我們是不是該這樣獲取:

soup.find('div',{"class":"pull-left"}).find('ul').findAll('a')

如果你說是,那么一定沒有好好看我前天整理的文章通過哪吒豆瓣影評,帶你分析python爬蟲快速入門:https://www.jianshu.com/p/ae38f7607902,我在文章中專門提到了一個小技巧,通過使用attr的屬性進行快速解析,那么最快速的獲取方式是:

soup.findAll('a', attrs={'onclick': True})

我們只需要獲取所有的a標簽,切這些標簽中包含onclick這個屬性即可。

巧用eval

我們解析到的內容通過attr[‘onclick'],可以得到他的屬性open1(‘夜','http://p9-dy.byteimg.com/obj/61a20007a98954b0831d),如何能快速獲取歌曲名字和url呢?這里我們需要用到一個eval的小技巧:

index = "open1('夜','http://p9-dy.byteimg.com/obj/61a20007a98954b0831d','')"
index[5:]
"('夜','http://p9-dy.byteimg.com/obj/61a20007a98954b0831d','')"
index_tuple = eval(index[5:])
print(index_tuple, type(index_tuple))
('夜', 'http://p9-dy.byteimg.com/obj/61a20007a98954b0831d', '') class 'tuple'>
index_tuple[0]
'夜'
index_tuple[1]
'http://p9-dy.byteimg.com/obj/61a20007a98954b0831d'

ps:今天一個朋友說我寫代碼沒注釋,我這是現身說法的告訴你,如何能寫出讓別人壓根看不懂的代碼,就是不寫注釋啊,哈哈!其實,代碼我都在文章中一點一點的講解了,所以沒有寫,但秉承著害怕大佬們取關的心態,我還是把注釋加上吧…

代碼實現

總體來說實現比較簡單,全部代碼如下:

import os
import requests
from bs4 import BeautifulSoup
import threading
import time


class DouYinMusic:
    def __init__(self):
        self.music_list = []
        self.path = self.download_path()

    @staticmethod
    def download_path():
        """
        獲取代碼執行目錄,并在目錄下創建Music文件夾
        :return Music文件夾全路徑
        """
        base_dir = os.path.dirname(os.path.abspath(__file__))
        _path = os.path.join(base_dir, "Music")
        if not os.path.exists(_path):
            os.mkdir(_path)
        return _path

    def get_request(self, url):
        """
        封裝requests.get方法
        如果為網頁請求,返回網頁內容
        否則,解析音樂地址,并返回音樂二進制文件
        :param url: 請求url(分網頁、音樂兩類)
        :return: 網頁內容  音樂二進制文件
        """
        r = requests.get(url, timeout=5)
        if url.endswith('html'):
            return r.text
        else:
            return r.content

    def analysis_html(self, html):
        """
        根據獲取的網頁內容,解析音樂名稱、下載地址
        調用音樂下載方法
        :param html: 網頁內容
        """
        soup = BeautifulSoup(html, 'lxml')
        # 根據關鍵字onclick查找每個下載地址
        for tag_a in soup.findAll('a', attrs={'onclick': True}):
            # 下載格式'("name","link","")',通過eval將str轉化為tuple類型
            link_list = eval(tag_a['onclick'][5:])
            music_name, music_link = link_list[:2]
            # 因為存在部分重復音樂,故設置判斷下載過的音樂跳過
            if music_name in self.music_list:
                continue
            self.music_list.append(music_name)
            t = threading.Thread(target=self.download_music, args=(music_name, music_link))
            time.sleep(0.5)
            t.start()

    def download_music(self, music_name, music_link):
        """
        解析音樂文件,完成音樂下載
        :param music_name: 音樂名稱
        :param music_link: 下載地址
        """
        _full_name = os.path.join(self.path, music_name)
        with open(_full_name + '.mp3', 'wb') as f:
            f.write(self.get_request(music_link))
        print("抖音音樂:{} 下載完成".format(music_name))

    def run(self):
        """
        主方法,用于批量生成url
        """
        for page in range(1,55):
            url = "http://douyin.bm8.com.cn/t_{}.html".format(page)
            html = self.get_request(url)
            self.analysis_html(html)


if __name__ == '__main__':
    main = DouYinMusic()
    main.run()

來讓我們看看效果吧:

網站是通過nginx負載均衡搭建的,有一些鏈接已經失效了。最終下載了不重復的592首抖音音樂。

同樣的,大家喜歡可以按照這種方法,嘗試下載一下網站的抖音視頻。

以上就是如何用Python一次性下載抖音上音樂的詳細內容,更多關于Python一次性下載抖音上音樂的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • Python基于爬蟲實現全網搜索并下載音樂
  • python實現可下載音樂的音樂播放器
  • 如何基于Python批量下載音樂
  • python爬取網易云音樂熱歌榜實例代碼
  • python打開音樂文件的實例方法
  • python給視頻添加背景音樂并改變音量的具體方法
  • python中加背景音樂如何操作
  • 基于python實現音樂播放器代碼實例
  • Python如何爬取qq音樂歌詞到本地
  • python實現音樂播放和下載小程序功能
  • Python音樂爬蟲完美繞過反爬

標簽:益陽 黔西 惠州 黑龍江 常德 鷹潭 上海 四川

巨人網絡通訊聲明:本文標題《如何用Python一次性下載抖音上音樂》,本文關鍵詞  如,何用,Python,一次性,下載,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《如何用Python一次性下載抖音上音樂》相關的同類信息!
  • 本頁收集關于如何用Python一次性下載抖音上音樂的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    亚洲6080在线| 丝袜a∨在线一区二区三区不卡| 欧美美女bb生活片| 91免费看片在线观看| 99久久国产综合精品女不卡| 97精品国产露脸对白| 97精品国产露脸对白| 91视频免费播放| 欧美吞精做爰啪啪高潮| 欧美色图在线观看| 日韩一区二区三区免费观看| 欧美videos大乳护士334| 亚洲精品一区二区三区蜜桃下载| 久久久久国产精品厨房| 亚洲视频免费看| 午夜精品一区二区三区免费视频| 天天综合天天做天天综合| 免费在线看成人av| 国产成人免费视频网站| 色哟哟精品一区| 日韩免费高清视频| 国产精品美女久久福利网站| 亚洲伊人色欲综合网| 免费成人美女在线观看.| 成人午夜私人影院| 欧美日韩国产综合一区二区| 精品国产乱码久久久久久老虎| 国产精品美女久久久久aⅴ国产馆| 亚洲国产中文字幕在线视频综合| 男女性色大片免费观看一区二区| 国产91富婆露脸刺激对白| 97国产一区二区| 日韩亚洲电影在线| 最新不卡av在线| 奇米色一区二区| 色综合天天性综合| 久久免费偷拍视频| 亚洲成av人在线观看| 国产99久久久国产精品潘金| 欧美日韩电影在线播放| 国产日产亚洲精品系列| 日韩在线a电影| 91热门视频在线观看| 国产日韩精品一区二区三区在线| 亚洲444eee在线观看| 91女厕偷拍女厕偷拍高清| 久久综合狠狠综合久久激情| 一区二区三区在线不卡| 国产69精品一区二区亚洲孕妇| 91精品国产福利| 香蕉av福利精品导航| 91丨九色丨尤物| 国产亚洲欧洲一区高清在线观看| 日韩精品国产精品| 欧美影院午夜播放| 亚洲美女电影在线| 99久久精品国产精品久久| 久久综合色天天久久综合图片| 五月综合激情网| 欧美亚洲高清一区二区三区不卡| 国产精品视频一二三区| 激情欧美日韩一区二区| 日韩精品一区二区三区视频播放| 视频精品一区二区| 欧美一区二区三区在线观看视频| 亚洲午夜久久久久久久久久久| 99r精品视频| 亚洲精品国产精华液| 色婷婷激情综合| 亚洲裸体xxx| 色婷婷av一区二区三区大白胸| 中文字幕一区二区三区乱码在线| 国产成人无遮挡在线视频| 久久综合网色—综合色88| 精品夜夜嗨av一区二区三区| 日韩免费高清视频| 国产麻豆日韩欧美久久| 久久久久一区二区三区四区| 国产精品18久久久久久久网站| 精品国产精品网麻豆系列| 精东粉嫩av免费一区二区三区| 欧美白人最猛性xxxxx69交| 日本不卡视频一二三区| 日韩视频免费观看高清完整版在线观看 | 久久久国产精品麻豆| 毛片av一区二区| 久久久国际精品| 夫妻av一区二区| 中文字幕在线不卡一区| 91亚洲国产成人精品一区二三| 中文字幕在线观看一区二区| 91麻豆精品在线观看| 一个色综合av| 91精品国产91综合久久蜜臀| 老司机精品视频一区二区三区| www国产成人免费观看视频 深夜成人网| 麻豆中文一区二区| 中文字幕欧美日韩一区| 欧美亚洲免费在线一区| 日日夜夜精品视频天天综合网| 制服丝袜日韩国产| 国产成人在线色| 亚洲一区二区av电影| 日韩精品资源二区在线| 成人一区在线看| 亚洲成人免费在线| 久久美女高清视频| 欧美综合久久久| 国产一区二区日韩精品| 国产精品国产a级| 欧美精品九九99久久| 成人精品gif动图一区| 亚洲第一av色| 国产清纯在线一区二区www| 欧亚洲嫩模精品一区三区| 精品一区二区三区影院在线午夜| 国产欧美1区2区3区| 欧美精品一二三| www.亚洲精品| 国产一区999| 亚洲一区二区三区四区五区黄| 精品少妇一区二区三区免费观看| 色噜噜夜夜夜综合网| 国产一区 二区| 亚洲国产精品尤物yw在线观看| 国产欧美日本一区视频| 欧美一区二区三区视频免费播放| 波多野结衣在线一区| 久久99精品视频| 亚洲国产你懂的| 亚洲欧美综合色| 久久久久久一二三区| 欧美一级黄色片| 欧美日韩午夜影院| 91亚洲男人天堂| 成人的网站免费观看| 久久成人18免费观看| 日日骚欧美日韩| 婷婷丁香激情综合| 亚洲一级片在线观看| 一区二区三区日韩| 亚洲欧美综合另类在线卡通| 国产欧美日韩在线视频| 久久久久久亚洲综合影院红桃| 日韩欧美国产一区二区三区| 欧美电影在哪看比较好| 欧美伊人精品成人久久综合97| 99久久精品久久久久久清纯| 99久久久精品| 99国产精品国产精品毛片| av网站免费线看精品| 成人久久18免费网站麻豆| 国产成人在线观看免费网站| 韩国欧美国产一区| 国产精品资源在线观看| 精品中文av资源站在线观看| 久久国产生活片100| 国产精品一区二区三区四区| 国产专区欧美精品| 国产aⅴ综合色| 99久久精品免费精品国产| 91蝌蚪porny成人天涯| 97se狠狠狠综合亚洲狠狠| 91偷拍与自偷拍精品| 欧美综合一区二区| 91精品国产综合久久久蜜臀粉嫩 | 一区二区三区产品免费精品久久75| 一区在线观看免费| 亚洲另类中文字| 亚洲第一福利视频在线| 久久精品国产网站| 国产盗摄一区二区| 一本到一区二区三区| 欧美日韩日本视频| 久久精品日韩一区二区三区| 日本一区二区三区免费乱视频| 亚洲视频小说图片| 蜜桃av一区二区三区| 大胆亚洲人体视频| 色88888久久久久久影院野外| 欧美一区二区观看视频| 国产嫩草影院久久久久| 亚洲第一狼人社区| 免费看日韩精品| 色综合中文字幕国产| 欧美伦理电影网| 久久免费美女视频| 亚洲成在人线在线播放| 国产精品一区二区无线| 欧美在线啊v一区| 精品国产百合女同互慰| 亚洲美女区一区| 国产乱一区二区| 欧美精品一卡二卡| 亚洲色图制服诱惑| 精品无人码麻豆乱码1区2区| 日本韩国欧美三级| 久久久无码精品亚洲日韩按摩| 亚洲成人一区二区| 91一区一区三区|