寫在前面
發彈幕只是其中一個小小的功能,還可以自動點贊、收藏、投幣、自動播放、私信等等,但是我們只演示這個,其它的不做展示。
先打開一個視頻或者直播,F12打開開發者工具,點擊network。然后點這個清空一下
再發送一個彈幕,然后可以看到這個send,有一個post請求。點擊payload可以看到我們剛剛發送的彈幕相關數據
然后來寫代碼
# 我還給大家准備了這些資料,直接在群里就可以免費領取了。 # 群:924040232 # python學習路線匯總 # 精品Python學習書籍100本 # Python入門視頻合集 # Python實戰案例 # Python面試題 # Python相關軟件工具/pycharm永久激活
首先導入模塊
import random import time
這是我們的url
url = 'https://api.live.bi******.com/msg/send' # 某些原因我就不打全了
接收一下data參數
data = { 'bubble': '0', 'msg': 6666, 'color': '16777215', 'mode': '1', 'fontsize': '25', 'rnd': '1640181316', 'roomid': '22819508', 'csrf': '131d24bf2b92a3609208ed83758ab8f2', 'csrf_token': '131d24bf2b92a3609208ed83758ab8f2', }
然后headers請求頭這里,把cookie什么的都給它加上去。
headers = { 'cookie': '_uuid=CF79473B-0F83-6087-BCB0-23A7E36C479296281infoc; buvid3=8AEBDC64-0CEE-4F6F-9866-B1508FAB2871148805infoc; blackside_state=1; rpdid=|(kmJY|kmu|)0J\'uYJRYkJu|Y; CURRENT_QUALITY=32; buvid_fp=8AEBDC64-0CEE-4F6F-9866-B1508FAB2871148805infoc; video_page_version=v_old_home; sid=abkn3and; i-wanna-go-back=-1; b_ut=5; bp_video_offset_65901796=602085772740229500; LIVE_BUVID=AUTO5916400017585242; CURRENT_BLACKGAP=1; CURRENT_FNVAL=2000; b_lsid=FB21108D7_17DE26BCC89; fingerprint=3c7949ca118951ae1be0b5b37b321306; buvid_fp_plain=556F173C-C5B7-4583-86F9-FD1074EB421D143076infoc; DedeUserID=523606542; DedeUserID__ckMd5=909861ec223d26d8; SESSDATA=cec4dda4%2C1655733287%2Cc5b88*c1; bili_jct=131d24bf2b92a3609208ed83758ab8f2; innersign=0; _dfcaptcha=fbb016616944e9b94331aeb2627c9d3d; PVID=3', 'origin': 'https://live.bi****.com', 'referer': 'https://live.bi****.com/', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36', }
接收數據
response = requests.post(url=url, data=data, headers=headers)
輸出
print(response.text)
這是最最最簡單的版本,就四行代碼就可以了。
找了個沒人看的視頻運行一下,發了個你好。
那如果
要發多一點呢?
給它一個列表
lis = ['主播666', '主播真帥', '666']
導入的random模塊就是為了隨機取一個彈幕
word = random.choice(lis)
然后我們在寫一個死循環
while True: lis = ['主播666', '主播真帥', '666'] word = random.choice(lis)
導入的time是一個延時函數,我們在每次發完之后,我們延遲五秒鍾,放到最后面。
time.sleep(5)
再來看看效果
全部代碼
import random import time while True: lis = ['主播666', '主播真帥', '666'] word = random.choice(lis) url = 'https://api.live.bi****.com/msg/send' data = { 'bubble': '0', 'msg': word, 'color': '16777215', 'mode': '1', 'fontsize': '25', 'rnd': '1640181316', 'roomid': '22819508', 'csrf': '131d24bf2b92a3609208ed83758ab8f2', 'csrf_token': '131d24bf2b92a3609208ed83758ab8f2', } headers = { 'cookie': '_uuid=CF79473B-0F83-6087-BCB0-23A7E36C479296281infoc; buvid3=8AEBDC64-0CEE-4F6F-9866-B1508FAB2871148805infoc; blackside_state=1; rpdid=|(kmJY|kmu|)0J\'uYJRYkJu|Y; CURRENT_QUALITY=32; buvid_fp=8AEBDC64-0CEE-4F6F-9866-B1508FAB2871148805infoc; video_page_version=v_old_home; sid=abkn3and; i-wanna-go-back=-1; b_ut=5; bp_video_offset_65901796=602085772740229500; LIVE_BUVID=AUTO5916400017585242; CURRENT_BLACKGAP=1; CURRENT_FNVAL=2000; b_lsid=FB21108D7_17DE26BCC89; fingerprint=3c7949ca118951ae1be0b5b37b321306; buvid_fp_plain=556F173C-C5B7-4583-86F9-FD1074EB421D143076infoc; DedeUserID=523606542; DedeUserID__ckMd5=909861ec223d26d8; SESSDATA=cec4dda4%2C1655733287%2Cc5b88*c1; bili_jct=131d24bf2b92a3609208ed83758ab8f2; innersign=0; _dfcaptcha=fbb016616944e9b94331aeb2627c9d3d; PVID=3', 'origin': 'https://live.bi****.com', 'referer': 'https://live.bi****.com/', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36', } response = requests.post(url=url, data=data, headers=headers) print(response.text) time.sleep(5)
兄弟們,支持一下來個三連,需要你們提一點動力~
關注我獲取更多精彩內容!