Python爬蟲:爬取app短視頻

"""

夜神模擬器+fiddler+Python

爬取app小視頻

下載fiddler 配置 網絡與端口

下載夜神 配置網絡 下載認證

下載app 最後抓包

 

"""

class DouYinApp():

    #頁面請求
    def get_page(self,url):
        response = requests.get(url)
        response = response.json()
        return response

    #頁面解析重要參數skID
    def paser_id(self,url):
        id_keys = []
        items = self.get_page(url)
        for id in items['tab_list']:
            skID = id['skipID']
            id_keys.append(skID)
        return id_keys
    

    #構造詳情頁url
    def details_url(self,url):
        details_url = []
        for video_url in self.paser_id(url):
            mp4_url = 'https://c.m.163.com/nc/video/detail/{}.html'.format(video_url)
            details_url.append(mp4_url)
        return details_url
    
        

    #提取視頻鏈接並下載
    def paser_mp4(self,url):
        links = []
        for mp4 in self.details_url(url):
            resp = self.get_page(mp4)
            mp4_urls = resp['mp4Hd_url']
            title = resp['title']
            #print(mp4_urls,title)
            info = {'title':title,'mp4_url':mp4_urls}
            links.append(info)
            print(title)
        return links


    #短視頻下載
    def save(self,name,contentt):
        with open(str(name)+'.mp4','wb')as f:
            f.write(contentt) 



    #下載視頻並保存
    def load_app(self,url):
        for results in self.paser_mp4(url):
            title = results['title'][1:8]
            video = results['mp4_url']
            response = requests.get(video)
            response = response.content
            self.save(title,response)



    #構造翻頁
    def pool_url(self):
        urls = []
        for i in range(5):
            url = 'https://c.m.163.com/nc/subscribe/list/T1528640720843/all/{}-20.html' .format(i*20)
            urls.append(url)
            #print(url)
        return urls

if __name__ == "__main__":
    douyin = DouYinApp() 
    print('開始爬取抖音視頻。。。。')
    #多線程
    pool = Pool()
    results = pool.map(douyin.load_app,douyin.pool_url()) 
    pool.close()
    pool.join()

    print('開始爬取抖音視頻結束嘍。。。。')
    
 

    
    

爬取結果:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章