|

楼主 |
发表于 2019-9-24 11:24:47
|
显示全部楼层
import requests
import random
import time
class DanmuSend:
url="https://api.live.bilibili.com/ajax/msg"
data={"roomid":"51402",
"crf_token":"c66b112fb10ff48c4691c1e80759d4d0",
"crf":"c6b112fb10ff48c4691c1e80759d4d0",
"vsit_id":""}
headers={"Referer":"https://live.bilibili.com/521402?spm_id_from=333.334.b_62696c695f6c697665.6",
"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"}
def __init__(self,roomid):
self.roomid=str(roomid)
self.url = "https://api.live.bilibili.com/ajax/msg"
self.data = {"roomid": self.roomid,
"data_behavior_id":"baf614cd2dd18",
"data_source_id":"system",
"crf_token": "c66b112fb10ff48c4691c1e80759d4d0",
"vsit_id": ""}
self.headers = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"}
def Gethtml(self):
res=requests.post(url=self.url,data=self.data,headers=self.headers)
print(res.json()["data"]["room"][1]["text"])
self.danmu=list(map(lambda x:res.json()["data"]["room"][x]["text"],range(0,10)))
self.massage=self.danmu[random.randint(7,9)]
print(self.massage)
def Senddanmu(self):
self.url2 = "https://api.live.bilibili.com/msg/send"
self.data2 = {"color": "16777215",
"fontsize": "25",
"mode": "1",
"msg": self.massage,
"rnd": "1569222078",
"roomid": self.roomid,
"csrf_token": "a11e37e926461134ae2fbed3e7cdc9ba"}
self.cookies={"cookies":"_uuid=9C1C1860-7F9B-9049-CD2C-8EDB7F55AA7089766infoc; buvid3=C10D451D-5C36-4553-8AEF-92B4BEE67619190972infoc; LIVE_BUVID=AUTO3815692441944344; sid=iklo8shz; DedeUserID=52782850; DedeUserID__ckMd5=d283db5d20f04f6d; SESSDATA=1be532e2%2C1571836388%2Ce71be591; bili_jct=50975c0173f50e64970aeb2881db74ea; _dfcaptcha=f8b44efa1da66c9b5509183257cf8ae3; Hm_lvt_8a6e55dbd2870f0f5bc9194cddf32a02=1569244228,1569246707; Hm_lpvt_8a6e55dbd2870f0f5bc9194cddf32a02=1569246713"}
requests.post(self.url2,cookies=self.cookies,data=self.data2)
if __name__=="__main__":
roomid = input("请输入你要帮忙的主播房间号:")
while 1:
danmu=DanmuSend(roomid)
danmu.Gethtml()
danmu.Senddanmu()
time.sleep(random.randint(3,8))
现在这个"set" 问题解决了,感谢你们的帮助 ,这是一个B站水军式的弹幕,希望有想法的小伙伴 ,一起互相改进呀 |
|