欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)爬取某站視頻彈幕并繪制詞云圖

 更新時(shí)間:2021年12月17日 12:01:12   作者:魔王不會(huì)哭  
這篇文章主要介紹了利用Python爬取某站的視頻彈幕,并將其繪制成詞云圖,文中的示例代碼講解詳細(xì),對(duì)我學(xué)習(xí)Python爬蟲有一定的幫助,需要的朋友可以參考一下

前言

[課 題]:

Python爬取某站視頻彈幕或者騰訊視頻彈幕,繪制詞云圖

[知識(shí)點(diǎn)]:

1. 爬蟲基本流程

2. 正則

3. requests >>> pip install requests

4. jieba >>> pip install jieba

5. imageio >>> pip install imageio

6. wordcloud? >>> pip install wordcloud

[開發(fā)環(huán)境]:

Python 3.8

Pycharm

win + R 輸入cmd 輸入安裝命令 pip install 模塊名 如果出現(xiàn)爆紅 可能是因?yàn)?網(wǎng)絡(luò)連接超時(shí) 切換國(guó)內(nèi)鏡像源

相對(duì)應(yīng)的安裝包/安裝教程/激活碼/使用教程/學(xué)習(xí)資料/工具插件 可以找我

爬取彈幕

爬蟲基本思路流程

一. 數(shù)據(jù)來(lái)源分析

1. 確定我們想要數(shù)據(jù)是什么?

爬取某站彈幕數(shù)據(jù) 保存文本txt

2. 通過(guò)開發(fā)者工具進(jìn)行抓包分析...

通過(guò) 接口可以直接找到視頻的彈幕數(shù)據(jù)地址

二. 爬蟲代碼實(shí)現(xiàn)步驟

1. 發(fā)送請(qǐng)求,? 對(duì)于(評(píng)論看) 發(fā)送請(qǐng)求

需要注意點(diǎn):

  • - 請(qǐng)求方式確定
  • - 請(qǐng)求頭參數(shù)

2. 獲取數(shù)據(jù), 獲取服務(wù)器返回的數(shù)據(jù)

3. 解析數(shù)據(jù), 提取我們想要數(shù)據(jù)內(nèi)容, 彈幕數(shù)據(jù)

4. 保存數(shù)據(jù), 把獲取下來(lái)的數(shù)據(jù)內(nèi)容保存txt文本

模擬瀏覽器對(duì)于服務(wù)器發(fā)送請(qǐng)求

導(dǎo)入模塊

import requests  # 數(shù)據(jù)請(qǐng)求模塊 第三方模塊 pip install requests
import re  # 正則表達(dá)式模塊 內(nèi)置模塊 不需要安裝

代碼

# # 1. 發(fā)送請(qǐng)求
# url = '(評(píng)論看)'
# # headers 請(qǐng)求頭 作用把Python代碼進(jìn)行偽裝, 模擬成瀏覽器去發(fā)送請(qǐng)求
# # user-agent 瀏覽器基本身份標(biāo)識(shí)
# # headers 請(qǐng)求頭 字典數(shù)據(jù)類型
# headers = {
#     'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36'
# }
# # 通過(guò)requests模塊里面get請(qǐng)求方法, 對(duì)于url地址發(fā)送請(qǐng)求, 并且攜帶上headers請(qǐng)求頭, 最后用response變量去接收返回?cái)?shù)據(jù)
# response = requests.get(url=url, headers=headers)
# response.encoding = response.apparent_encoding
# # <Response [200]> response對(duì)象 200狀態(tài)碼 表示請(qǐng)求成功
# # 如果你想要獲取 網(wǎng)頁(yè)源代碼一樣的數(shù)據(jù)內(nèi)容的話, 是獲取響應(yīng)體的文本數(shù)據(jù)
# # 如果服務(wù)器返回的數(shù)據(jù), 不是完整json數(shù)據(jù) 字典數(shù)據(jù) 直接獲取response.json()就會(huì)報(bào)錯(cuò)
# # 2. 獲取數(shù)據(jù) response.text 返回?cái)?shù)據(jù) html字符串?dāng)?shù)據(jù)
# # print(response.text)
# # 3. 解析數(shù)據(jù), 解析方式  re[可以直接對(duì)于字符串?dāng)?shù)據(jù)進(jìn)行提取] css xpath [主要根據(jù)標(biāo)簽屬性/節(jié)點(diǎn)提取數(shù)據(jù)]
# # () 精確匹配 表示想要的數(shù)據(jù) 泛匹配 .*? 正則表達(dá)式元字符 可以匹配任意字符(除了換行符\n以外)
# data_list = re.findall('<d p=".*?">(.*?)</d>', response.text)
# for index in data_list:
#     # mode 保存方式 encoding 編碼
#     # pprint.pprint() 格式化輸入 json字典數(shù)據(jù)
#     with open('彈幕.txt', mode='a', encoding='utf-8') as f:
#         f.write(index)
#         f.write('\n')
#         print(index)
url = 'https://mapi.vip.com/vips-mobile/rest/shopping/pc/search/product/rank?callback=getMerchandiseIds&app_name=shop_pc&app_version=4.0&warehouse=VIP_NH&fdc_area_id=104104101&client=pc&mobile_platform=1&province_id=104104&api_key=70f71280d5d547b2a7bb370a529aeea1&user_id=&mars_cid=1634797375792_17a23bdc351b36f2915c2f7ec16dc88e&wap_consumer=a&standby_id=nature&keyword=%E5%8F%A3%E7%BA%A2&lv3CatIds=&lv2CatIds=&lv1CatIds=&brandStoreSns=&props=&priceMin=&priceMax=&vipService=&sort=0&pageOffset=0&channelId=1&gPlatform=PC&batchSize=120&_=1639640088314'

headers = {
    'referer': 'https://category.vip.com/',
    'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36'
}
response = requests.get(url=url, headers=headers)
print(response.text)

制作詞云圖

[知識(shí)點(diǎn)]:

1. 爬蟲基本流程

2. 正則

3. requests >>> pip install requests

4. jieba >>> pip install jieba

5. imageio >>> pip install imageio

6. wordcloud? >>> pip install wordcloud

[開發(fā)環(huán)境]:

Python 3.8

Pycharm

導(dǎo)入模塊

import jieba  # 結(jié)巴分詞 pip install jieba
import wordcloud  # 詞云圖 pip install wordcloud
import imageio  # 讀取本地圖片 修改詞云圖形
img = imageio.imread('蘋果.png')

讀取彈幕數(shù)據(jù)

f = open('彈幕.txt', encoding='utf-8')
text = f.read()
# print(text)

分詞, 把一句話 分割成很多詞匯

text_list = jieba.lcut(text)
print(text_list)
# 列表轉(zhuǎn)成字符串
text_str = ' '.join(text_list)
print(text_str)

詞云圖配置

wc = wordcloud.WordCloud(
    width=500,  # 寬度
    height=500,  # 高度
    background_color='white', # 背景顏色
    mask=img,
    stopwords={'每', '一個(gè)', '了', '的', '夢(mèng)想', '助力'},
    font_path='msyh.ttc'  # 字體文件
)

wc.generate(text_str)
wc.to_file('詞云1.png')

?到此這篇關(guān)于Python實(shí)現(xiàn)爬取某站視頻彈幕并繪制詞云圖的文章就介紹到這了,更多相關(guān)Python爬取視頻彈幕 繪制詞云圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一篇文章弄懂Python中所有數(shù)組數(shù)據(jù)類型

    一篇文章弄懂Python中所有數(shù)組數(shù)據(jù)類型

    這篇文章主要給大家介紹了關(guān)于Python中所有數(shù)組數(shù)據(jù)類型的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • python 動(dòng)態(tài)遷移solr數(shù)據(jù)過(guò)程解析

    python 動(dòng)態(tài)遷移solr數(shù)據(jù)過(guò)程解析

    這篇文章主要介紹了python 動(dòng)態(tài)遷移solr數(shù)據(jù)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • Python技巧之實(shí)現(xiàn)批量統(tǒng)一圖片格式和尺寸

    Python技巧之實(shí)現(xiàn)批量統(tǒng)一圖片格式和尺寸

    大家在工作的時(shí)候基本都會(huì)接觸到很多的圖片,有時(shí)為了不同的工作需求需要修改圖片的尺寸或者大小。本文為大家整理了Python批量轉(zhuǎn)換圖片格式和統(tǒng)一圖片尺寸,希望對(duì)大家有所幫助
    2023-05-05
  • python數(shù)字圖像處理之骨架提取與分水嶺算法

    python數(shù)字圖像處理之骨架提取與分水嶺算法

    這篇文章主要介紹了python數(shù)字圖像處理之骨架提取與分水嶺算法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • 解決jupyter不是內(nèi)部或外部命令,也不是可運(yùn)行程序問(wèn)題

    解決jupyter不是內(nèi)部或外部命令,也不是可運(yùn)行程序問(wèn)題

    這篇文章主要介紹了解決jupyter不是內(nèi)部或外部命令,也不是可運(yùn)行程序問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 使用pygame寫一個(gè)古詩(shī)詞填空通關(guān)游戲

    使用pygame寫一個(gè)古詩(shī)詞填空通關(guān)游戲

    這篇文章主要介紹了使用pygame寫一個(gè)古詩(shī)詞填空通關(guān)游戲,之前寫的詩(shī)詞填空的游戲支持python2,現(xiàn)在對(duì)程序進(jìn)行了修改,兼容支持python2和python3,需要的朋友可以參考下
    2019-12-12
  • 基于anaconda下強(qiáng)大的conda命令介紹

    基于anaconda下強(qiáng)大的conda命令介紹

    今天小編就為大家分享一篇基于anaconda下強(qiáng)大的conda命令介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • tensorflow與numpy的版本兼容性問(wèn)題的解決

    tensorflow與numpy的版本兼容性問(wèn)題的解決

    這篇文章主要介紹了tensorflow與numpy的版本兼容性問(wèn)題的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • python裝飾器decorator介紹

    python裝飾器decorator介紹

    這篇文章主要介紹了python裝飾器decorator介紹,decorator設(shè)計(jì)模式允許動(dòng)態(tài)地對(duì)現(xiàn)有的對(duì)象或函數(shù)包裝以至于修改現(xiàn)有的職責(zé)和行為,簡(jiǎn)單地講用來(lái)動(dòng)態(tài)地?cái)U(kuò)展現(xiàn)有的功能,需要的朋友可以參考下
    2014-11-11
  • Python自動(dòng)搶紅包教程詳解

    Python自動(dòng)搶紅包教程詳解

    在本篇文章里小編給大家整理了關(guān)于Python自動(dòng)搶紅包的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們參考學(xué)習(xí)下。
    2019-06-06

最新評(píng)論