真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python爬蟲如何爬取抖音熱門音樂

這篇文章主要為大家展示了“python爬蟲如何爬取抖音熱門音樂”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“python爬蟲如何爬取抖音熱門音樂”這篇文章吧。

創(chuàng)新互聯(lián)成立十多年來(lái),這條路我們正越走越好,積累了技術(shù)與客戶資源,形成了良好的口碑。為客戶提供成都做網(wǎng)站、成都網(wǎng)站建設(shè)、網(wǎng)站策劃、網(wǎng)頁(yè)設(shè)計(jì)、國(guó)際域名空間、網(wǎng)絡(luò)營(yíng)銷、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。網(wǎng)站是否美觀、功能強(qiáng)大、用戶體驗(yàn)好、性價(jià)比高、打開快等等,這些對(duì)于網(wǎng)站建設(shè)都非常重要,創(chuàng)新互聯(lián)通過對(duì)建站技術(shù)性的掌握、對(duì)創(chuàng)意設(shè)計(jì)的研究為客戶提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進(jìn)步。

爬取抖音的熱門音樂

這個(gè)就相對(duì)來(lái)說(shuō)簡(jiǎn)單一點(diǎn),這是代碼運(yùn)行的結(jié)果

python爬蟲如何爬取抖音熱門音樂

python爬蟲如何爬取抖音熱門音樂

獲取音樂的網(wǎng)址https://kuaiyinshi.com/hot/music/?source=dou-yin&page=1

打開該網(wǎng)頁(yè)F12,F5刷新

python爬蟲如何爬取抖音熱門音樂

做義工只需要以上的數(shù)據(jù)

根據(jù)beautifulsoup去獲取,直接上代碼

headers = {
   'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
}
# 保存路徑
save_path = "G:\\Music\\douyin\\"
url = "https://kuaiyinshi.com/hot/music/?source=dou-yin&page=1"
# 獲取響應(yīng)
res = requests.get(url, headers=headers)
# 使用beautifulsoup解析
soup = BeautifulSoup(res.text, 'lxml')
# 選擇標(biāo)簽獲取最大頁(yè)數(shù)
max_page = soup.select('li.page-item > a')[-2].text
# 循環(huán)請(qǐng)求
for page in range(int(max_page)):
   page_url = "https://kuaiyinshi.com/hot/music/?source=dou-yin&page={}".format(page + 1)
   page_res = requests.get(page_url, headers=headers)
   soup = BeautifulSoup(page_res.text, 'lxml')
   lis = soup.select('li.rankbox-item')
   singers = soup.select('div.meta')
   music_names = soup.select('h3.tit > a')
   for i in range(len(lis)):
       music_url = "http:" + lis[i].get('data-audio')
       print("歌名:" + music_names[i].text, singers[i].text, "鏈接:" + music_url)
       try:
           download_file(music_url,
               save_path + music_names[i].text + ' - ' + singers[i].text.replace('/', ' ') + ".mp3")
       except:
           pass
   print("第{}頁(yè)完成~~~".format(page + 1))
   time.sleep(1)

將獲取到的文件的url傳遞到下載函數(shù)中


def download_file(src, file_path):

   #   響應(yīng)體工作流
   r = requests.get(src, stream=True)
   # 打開文件
   f = open(file_path, "wb")
   # for chunk in r.iter_content(chunk_size=512):
   #     if chunk:
   #         f.write(chunk)
   for data in tqdm(r.iter_content(chunk_size=512)):
       #tqdm進(jìn)度條的使用,for data in tqdm(iterable)
       f.write(data)
   return file_path

接下來(lái)就是關(guān)于響應(yīng)體工作流的說(shuō)明

python爬蟲如何爬取抖音熱門音樂

python爬蟲如何爬取抖音熱門音樂

   

默認(rèn)情況下,當(dāng)你進(jìn)行網(wǎng)絡(luò)請(qǐng)求后,響應(yīng)體會(huì)立即被下載。你可以通過 stream 參數(shù)覆蓋這個(gè)行為,推遲下載響應(yīng)體直到訪問 Response.content 屬性:

tarball_url = 'https://github.com/kennethreitz/requests/tarball/master' r = requests.get(tarball_url, stream=True)

此時(shí)僅有響應(yīng)頭被下載下來(lái)了,連接保持打開狀態(tài),因此允許我們根據(jù)條件獲取內(nèi)容:

if int(r.headers['content-length']) < TOO_LONG:  content = r.content  ...

你可以進(jìn)一步使用 Response.iter_content 和 Response.iter_lines 方法來(lái)控制工作流,或者以 Response.raw 從底層 urllib3 的 urllib3.HTTPResponse 讀取。

如果你在請(qǐng)求中把 stream 設(shè)為 True,Requests 無(wú)法將連接釋放回連接池,除非你 消耗了所有的數(shù)據(jù),或者調(diào)用了 Response.close。 這樣會(huì)帶來(lái)連接效率低下的問題。如果你發(fā)現(xiàn)你在使用stream=True 的同時(shí)還在部分讀取請(qǐng)求的 body(或者完全沒有讀取 body),那么你就應(yīng)該考慮使用 contextlib.closing (文檔), 如下所示:

from contextlib import closing with closing(requests.get('http://httpbin.org/get', stream=True)) as r:    # 在此處理響應(yīng)。 

以上是“python爬蟲如何爬取抖音熱門音樂”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


本文名稱:python爬蟲如何爬取抖音熱門音樂
當(dāng)前URL:http://weahome.cn/article/igiehi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部