鱼C论坛

 找回密码
 立即注册
查看: 2364|回复: 3

请问大哥们,这是什么问题呀

[复制链接]
发表于 2019-9-23 22:01:09 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请输入你要帮忙的主播房间号:1017

Traceback (most recent call last):
蚊子已经来过了哈哈哈哈哈哈哈哈哈
  File "C:/Users/admin/Desktop/爬虫专用/假期计划/venv/面向对象.py", line 48, in <module>
    danmu.Senddanmu()
  File "C:/Users/admin/Desktop/爬虫专用/假期计划/venv/面向对象.py", line 40, in Senddanmu
    requests.post(self.url2,cookies=self.cookies,data=self.data2)
  File "C:\Users\admin\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\api.py", line 116, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "C:\Users\admin\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\api.py", line 60, in request
    return session.request(method=method, url=url, **kwargs)
  File "C:\Users\admin\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\sessions.py", line 519, in request
    prep = self.prepare_request(req)
  File "C:\Users\admin\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\sessions.py", line 440, in prepare_request
    cookies = cookiejar_from_dict(cookies)
  File "C:\Users\admin\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\cookies.py", line 524, in cookiejar_from_dict
    cookiejar.set_cookie(create_cookie(name, cookie_dict[name]))
TypeError: 'set' object is not subscriptable

Process finished with exit code 1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-9-23 22:05:31 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-9-24 00:06:36 | 显示全部楼层
cookies是在header里面,不是这样set的。  
下次麻烦把源码贴出来

评分

参与人数 1鱼币 +5 收起 理由
撸串 + 5

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 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站水军式的弹幕,希望有想法的小伙伴 ,一起互相改进呀
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-27 19:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表