我用Python爬取了B站3948評(píng)論,圍觀最近超火的“殺瘋了酒繁!這就是國(guó)家隊(duì)的美貌嗎滓彰?”評(píng)論區(qū)

技術(shù)上碾壓對(duì)手

顏值上驚艷對(duì)手

中國(guó)奧運(yùn)健兒們真是又美又能打!

帶你一看

中國(guó)運(yùn)動(dòng)員顏值有多高


需求分析

網(wǎng)友們都在微博上說(shuō)了啥欲逃?

看這里

之氣那我們也有分析過(guò)B站的彈幕找蜜,有興趣的小伙伴可以看看這里

爬蟲B站彈幕| 考完試,這輩子稳析,這個(gè)班,基本是聚不齊了......

首先我們打開(kāi)B站找到我們要找的視頻弓叛。

F12打開(kāi)瀏覽器開(kāi)發(fā)者模式彰居,找到如下鏈接。

經(jīng)過(guò)測(cè)試發(fā)現(xiàn)撰筷,目前它是通過(guò)Js經(jīng)行渲染的陈惰,想通了這一點(diǎn),那就可以馬上去找接口了毕籽。

可以看到我們所有爬取的評(píng)論信息全在在一個(gè)不規(guī)則的json文件當(dāng)中

https://api.bilibili.com/x/v2/reply/main?callback=jQuery172011288135593018156_1627894496820&jsonp=jsonp&next=2&type=1&oid=674425220&mode=3&plat=1&_=1627894506606

https://api.bilibili.com/x/v2/reply/main?callback=jQuery172011288135593018156_1627894496821&jsonp=jsonp&next=3&type=1&oid=674425220&mode=3&plat=1&_=1627894508981

https://api.bilibili.com/x/v2/reply/main?callback=jQuery172011288135593018156_1627894496822&jsonp=jsonp&next=4&type=1&oid=674425220&mode=3&plat=1&_=1627894510667

https://api.bilibili.com/x/v2/reply/main?callback=jQuery172011288135593018156_1627894496823&jsonp=jsonp&next=5&type=1&oid=674425220&mode=3&plat=1&_=1627894567580

從上面的URL地址以及圖片抬闯,可以看出一共有8個(gè)查詢參數(shù)。

callback:每加載出一次便加1操作关筒。

next:每加載一次便加1操作溶握,next是從0開(kāi)始加載的。

_:13位的時(shí)間戳蒸播。


發(fā)送請(qǐng)求

我們首先模擬瀏覽器來(lái)發(fā)送請(qǐng)求獲取到這個(gè)json數(shù)據(jù)集睡榆,然后獲取具體的

評(píng)論者、行唄袍榆、評(píng)論時(shí)間胀屿、點(diǎn)贊人數(shù)和具體的評(píng)論內(nèi)容

url?=f'https://api.bilibili.com/x/v2/reply/main?callback=jQuery172009047692616139114_{1627891325400+?page}&jsonp=jsonp&next={page}&type=1&oid=674425220&mode=3&plat=1&_={time_thick}'

headers?=?{

"cookie":"_uuid=BA408FD2-1B4E-DCB0-1CBE-71233AE9FB2918358infoc;?buvid3=BA184AFC-F4DC-408A-8897-D0EDEA653CE5148812infoc;?sid=ld1hsb9h;?fingerprint=84acc3579a53d0eba78d769e71574df6;?buvid_fp=BA184AFC-F4DC-408A-8897-D0EDEA653CE5148812infoc;?buvid_fp_plain=BA184AFC-F4DC-408A-8897-D0EDEA653CE5148812infoc;?DedeUserID=434541726;?DedeUserID__ckMd5=448fda6ab5098e5e;?SESSDATA=40011147%2C1643348516%2Ce493c*81;?bili_jct=1d136ab44a600313299942bf8f6b8f95;?CURRENT_FNVAL=80;?blackside_state=1;?rpdid=|(u)YJR~R~)m0J'uYk~~mY~Y);?bsource=search_baidu;?PVID=1;?bfe_id=393becc67cde8e85697ff111d724b3c8",

'referer':'https://www.bilibili.com/video/BV1uU4y1H7wL',

'user-agent':'Mozilla/5.0?(Windows?NT?10.0;?WOW64)?AppleWebKit/537.36?(KHTML,?like?Gecko)?Chrome/93.0.4577.8?Safari/537.36'

}

resp?=?requests.get(url,?headers=headers)

ic(resp.text)

前面說(shuō)到我們獲取的這個(gè)json格式的數(shù)據(jù)集不是一個(gè)標(biāo)準(zhǔn)的json

就是因?yàn)榍懊娑嗔艘淮?/p>

‘jQuery172009047692616139114_1627891325400’

所以我們先將獲取到的數(shù)據(jù)集轉(zhuǎn)為標(biāo)準(zhǔn)的json格式。

如下:

#?獲取resp響應(yīng)

text?=?resp.text[42:-1]

#?轉(zhuǎn)換json格式

json_data?=?json.loads(text)

#?獲取所有評(píng)論

datas?=?json_data['data']['replies']

ic(datas)

接下來(lái)我們要獲取的就是那些評(píng)論信息等

foritemindatas:

#?評(píng)論者

name?=?item['member']['uname']

#?性別

sex?=?item['member']['sex']

#?評(píng)論時(shí)間

ctime?=?item.get('ctime')

content_time?=?time.strftime('%Y-%m-%d?%H:%M',?time.localtime(ctime))

#?點(diǎn)贊人數(shù)

star?=?item['like']

#?評(píng)論內(nèi)容

cmts?=?item['content']['message']

ic(name,?sex,?content_time,?star,?cmts)

實(shí)現(xiàn)翻頁(yè)爬取

在前面所描述的內(nèi)容包雀,都只是爬取一頁(yè)的數(shù)據(jù)宿崭,因此,接下來(lái)我要實(shí)現(xiàn)類于翻頁(yè)爬取的效果才写。

其實(shí)只要修改我上面所描述的3個(gè)查詢參數(shù)即可葡兑。

測(cè)試數(shù)據(jù)我們就先取200頁(yè)奴愉。

forpageinrange(1,200+1):

time_thick?=?int(time.time()?*1000)

url?=f'https://api.bilibili.com/x/v2/reply/main?callback=jQuery172009047692616139114_{1627891325400+?page}&jsonp=jsonp&next={page}&type=1&oid=674425220&mode=3&plat=1&_={time_thick}'

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

最后將爬取下來(lái)的數(shù)據(jù),使用openpyxl保存至Excel文件中铁孵,總共得到4000條測(cè)試數(shù)據(jù)锭硼。

數(shù)據(jù)處理

這里我們使用熊貓來(lái)讀取數(shù)據(jù),并去除空行

使用jieba制作分詞

rcv_data?=?pd.read_excel('嗶哩嗶哩.xlsx')

exist_col?=?rcv_data.dropna()#?刪除空行

c_title?=?exist_col['評(píng)論內(nèi)容'].tolist()

#?觀影評(píng)論詞云圖

wordlist?=?jieba.cut(''.join(c_title))

result?='?'.join(wordlist)

可視化

最后我們使用stylecloud來(lái)生成多樣形式的詞云

gen_stylecloud(text=result,

icon_name='fas?fa-table-tennis',

font_path='msyh.ttc',

background_color='white',

output_name=pic,

custom_stopwords=['啊','的','也','了','我','是','嗎','都','就','你','不','真的','有','這','沒(méi)有','他們','還有','說(shuō)','封面']

)

print('繪圖成功!')

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蜕劝,一起剝皮案震驚了整個(gè)濱河市檀头,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌岖沛,老刑警劉巖暑始,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異婴削,居然都是意外死亡廊镜,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門唉俗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)嗤朴,“玉大人,你說(shuō)我怎么就攤上這事虫溜”㈡ⅲ” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵衡楞,是天一觀的道長(zhǎng)吱雏。 經(jīng)常有香客問(wèn)我,道長(zhǎng)瘾境,這世上最難降的妖魔是什么歧杏? 我笑而不...
    開(kāi)封第一講書人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮迷守,結(jié)果婚禮上犬绒,老公的妹妹穿的比我還像新娘。我一直安慰自己盒犹,他們只是感情好懂更,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著急膀,像睡著了一般沮协。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上卓嫂,一...
    開(kāi)封第一講書人閱讀 51,679評(píng)論 1 305
  • 那天慷暂,我揣著相機(jī)與錄音,去河邊找鬼。 笑死行瑞,一個(gè)胖子當(dāng)著我的面吹牛奸腺,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播血久,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼突照,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了氧吐?” 一聲冷哼從身側(cè)響起讹蘑,我...
    開(kāi)封第一講書人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎筑舅,沒(méi)想到半個(gè)月后座慰,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡翠拣,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年版仔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片误墓。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蛮粮,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出优烧,到底是詐尸還是另有隱情蝉揍,我是刑警寧澤,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布畦娄,位于F島的核電站,受9級(jí)特大地震影響弊仪,放射性物質(zhì)發(fā)生泄漏熙卡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一励饵、第九天 我趴在偏房一處隱蔽的房頂上張望驳癌。 院中可真熱鬧,春花似錦役听、人聲如沸颓鲜。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)甜滨。三九已至,卻和暖如春瘤袖,著一層夾襖步出監(jiān)牢的瞬間衣摩,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工捂敌, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留艾扮,地道東北人既琴。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像泡嘴,于是被迫代替她去往敵國(guó)和親甫恩。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 視頻資源來(lái)自:b站——Python爬蟲編程基礎(chǔ)5天速成[https://www.bilibili.com/vide...
    小910888閱讀 320評(píng)論 0 0
  • 彈幕接口可以通過(guò)b站 轉(zhuǎn)換到手機(jī)端獲取彈幕接口:https://comment.bilibili.com/1085...
    年畫兒閱讀 1,007評(píng)論 0 1
  • 前言 我們看了一些酌予,爬蟲示例磺箕,對(duì)爬蟲應(yīng)該有比較深的理解了, 還是爬取評(píng)論霎终,這次選擇B站 點(diǎn)開(kāi)B站滞磺,打開(kāi)F12,點(diǎn)擊...
    我為峰2014閱讀 398評(píng)論 0 1
  • 表情是什么莱褒,我認(rèn)為表情就是表現(xiàn)出來(lái)的情緒击困。表情可以傳達(dá)很多信息。高興了當(dāng)然就笑了广凸,難過(guò)就哭了阅茶。兩者是相互影響密不可...
    Persistenc_6aea閱讀 125,086評(píng)論 2 7
  • 16宿命:用概率思維提高你的勝算 以前的我是風(fēng)險(xiǎn)厭惡者,不喜歡去冒險(xiǎn)谅海,但是人生放棄了冒險(xiǎn)脸哀,也就放棄了無(wú)數(shù)的可能。 ...
    yichen大刀閱讀 6,052評(píng)論 0 4