Python爬蟲:B站排行榜視頻播放量,視頻評論量等數據採集

前言

本文的文字及圖片來源於網絡,僅供學習、交流使用,不具備任何商業用途,若有問題請及時聯繫咱們以做處理。css

如下文章來源於CSND,做者嗨學編程編程

Python爬蟲:B站排行榜視頻播放量,視頻評論量等數據採集

 

項目背景

小Q發現小P天天在B站的時間特別長,他想和小P深刻地交流一下B站,可小Q前段時間學業壓力很大的,一直沒看B站,他想知道如今B站流行什麼,那你能幫幫他嗎?瀏覽器

項目目標

實現爬取當前B站排行榜的內容(爬取任一榜單便可),要求包括視頻排名視頻BV號,視頻封面,視頻播放量,視頻評論量, up主姓名網絡

Python爬蟲:B站排行榜視頻播放量,視頻評論量等數據採集

 

目標網頁分析

獲取數據內容工具

  • 標題
  • 播放量
  • 彈幕量
  • 做者
  • 綜合得分
  • 詳情頁地址

Python爬蟲:B站排行榜視頻播放量,視頻評論量等數據採集

 


開發者工具一看,好傢伙,就這?學習

Python爬蟲:B站排行榜視頻播放量,視頻評論量等數據採集

 


當看到這樣的狀況,是真的不用分析什麼了,直接就能夠從頭至尾開始寫代碼了網站

直接就是爬蟲三部曲走起了。url

一、模擬瀏覽器請求網站得到網頁數據;
二、解析網頁數據,提取想要的內容;
三、保存數據spa

完整代碼

import requests
import parsel
import csv
f = open('B站排行榜數據.csv', mode='a', encoding='utf-8-sig', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['標題', '播放量', '彈幕量', '做者', '綜合得分', '視頻地址'])
csv_writer.writeheader()
url = 'https://www.bilibili.com/v/popular/rank/all?spm_id_from=333.851.b_7072696d61727950616765546162.3'
headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'
}
response = requests.get(url=url, headers=headers)
selector = parsel.Selector(response.text)
lis = selector.css('.rank-list li')
dit = {}
for li in lis:
    title = li.css('.info a::text').get()    # 標題
    bf_info = li.css('div.content > div.info > div.detail > span:nth-child(1)::text').get().strip()     # 播放量
    dm_info = li.css('div.content > div.info > div.detail > span:nth-child(2)::text').get().strip()     # 彈幕量
    bq_info = li.css('div.content > div.info > div.detail > a > span::text').get().strip()      # 做者
    score = li.css('.pts div::text').get()      # 綜合得分
    page_url = li.css('.img a::attr(href)').get()  # 視頻地址
    dit = {
        '標題': title,
        '播放量': bf_info,
        '彈幕量': dm_info,
        '做者': bq_info,
        '綜合得分': score,
        '視頻地址': page_url,
    }
    csv_writer.writerow(dit)
    print(dit)

Python爬蟲:B站排行榜視頻播放量,視頻評論量等數據採集

本文分享 CSDN - 松鼠愛吃餅乾。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。.net

相關文章
相關標籤/搜索