31
loading...
This website collects cookies to deliver better user experience
<d p="490.19100,1,25,16777215,1584268892,0,a16f**dd,299508*****521095">蒙古上单对位击杀睿马一粥粘</d>
def GetCid(bv):#convert bv to cid.
headers={
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36',
'Host':'api.bilibili.com',
'content-type':'application/x-www-form-urlencoded'
}
data={}
data.update(bvid=bv)
#print(data)
rslt=requests.get('http://api.bilibili.com/x/player/pagelist',headers=headers,
params=data,timeout=10)
print(rslt.text)
rsltJson=json.loads('['+rslt.text+']')
cid=rsltJson[0]['data'][0]['cid']
return cid
def GetDanmaku(cid):
headers={
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36',
'Host':'api.bilibili.com',
'content-type':'application/x-www-form-urlencoded'
}
data={}
data.update(oid=cid)
rslt=requests.get('http://api.bilibili.com/x/v1/dm/list.so',headers=headers,
params=data,timeout=10)
return rslt
def loginQr():
print('打开b站客户端,扫码并确认后关闭扫码窗口即可。')
headers = {
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36',
'Host':'passport.bilibili.com'
}
rslt=requests.get('http://passport.bilibili.com/qrcode/getLoginUrl',
headers=headers,timeout=10)
urlJson=json.loads('['+rslt.text+']')
url=urlJson[0]['data']['url']
sp=os.getcwd()+'\\'
myqr.run(words=url,
version=1,
level='M',
save_dir=sp,
)
root=Tk()
root.resizable(width='false', height='false')
root.title='QrCode'
label=Label(root,text='使用b站客户端扫码,扫完关掉窗口')
label.grid(row=0,column=0)
img=Image.open('qrcode.png')
photo=ImageTk.PhotoImage(img)
imglabel=Label(root,image=photo)
imglabel.grid(row=1,column=0,columnspan=3)
root.mainloop()
return urlJson
def loginRslt(data):
headers = {
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36',
'Host':'passport.bilibili.com'
}
postData={}
postData.update(oauthKey=data[0]['data']['oauthKey'])
#print(postData)
loginInfo=requests.post('http://passport.bilibili.com/qrcode/getLoginInfo',
headers=headers,data=postData,timeout=10)
#print(loginInfo.text)
#print(str(loginInfo.cookies))
return loginInfo
loginInfo=loginRslt(loginQr())
sessdata=loginInfo.cookies['SESSDATA']
bili_jct=loginInfo.cookies['bili_jct']
def reportdm(key,csrf,dmid,cid):
headers = {
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36',
'Host':'api.bilibili.com',
'content-type':'application/x-www-form-urlencoded'
}
c = {
'csrf':csrf,
'SESSDATA':key
}
postData={
'csrf':csrf,
'cid':cid,
'dmid':dmid,
'reason':'9'
}
rslt=requests.post('http://api.bilibili.com/x/dm/report/add',
cookies=c,headers=headers,data=postData,timeout=10)
print(rslt.text)