某鱼弹幕抽奖脚本

斗鱼弹幕抽奖脚本

使用步骤

  1. 安装selenium

pip install selenium

  1. 安装chromeDriver
    chromedriver的版本一定要与chrome的版本一致
    在chrome浏览器中输入chrome://version/

下载地址

http://npm.taobao.org/mirrors/chromedriver/

  1. 解压压缩包,找到chromedriver.exe复制到chrome的安装目录。复制chromedriver.exe文件的路径并加入到电脑的环境变量中去
  2. 配置config文件,输入弹幕抽奖的房间号,发言频率以及抽奖时间
  3. 打开cmd ,切换到下载目录的文件夹,输入 python ./sendMsg.py执行
  4. 第一次执行需要进行扫码登录,需要在20s内在弹出的浏览器网页进行扫码登录
  5. 等待中奖, hhh!
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from selenium.common.exceptions import TimeoutException
import time
import json
import getCookies
import os
import myConfig

browser = webdriver.Chrome()
wait = WebDriverWait(browser, 10)

def login():
    #从文本读取cookies
    with open("./cookies.txt",'r', encoding='utf-8') as f:
        cookiesList = json.loads(f.read())
    f.close()

    browser.get("http://www.douyu.com/" + myConfig.ROOMNUM)
    for cookie in cookiesList:
        cookies_dict = {
            'domain':'.douyu.com',
            'httpOnly':False,
            'name':cookie.get('name'),
            'path':'/',
            'secure':False,
            'value':cookie.get('value')
        }
        #将cookie添加到browser中
        browser.add_cookie(cookies_dict)
    #刷新网页
    browser.refresh()

def sendMessage():
    try:
        input = wait.until(
            EC.presence_of_element_located((By.CSS_SELECTOR, "#js-player-asideMain > div > div.layout-Player-chat > div > div.ChatSpeak > div.ChatSend > textarea"))
        )
        #获取聊天框当前文本,即抽奖口令
        currentText = input.get_property('placeholder')
        
        input.clear()
        input.send_keys(currentText)
        input.send_keys(Keys.ENTER)

    except TimeoutException:
        return sendMessage()

def main():
    #判断cookies文件是否存在
    if not os.path.exists("./cookies.txt"):
        getCookies.get_cookies()
        print("获取cookie成功")
    login()
    for i in range(0,myConfig.TIMES//myConfig.FREQUENCY):
        print("第"+str(i+1)+"次参与抽奖")
        sendMessage()
        time.sleep(myConfig.FREQUENCY)

if __name__ == '__main__':
    main()



完整代码见github

www.github.com/heipi666/DouYuLottery

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
带用户ID的自定义幕 一、使用方法: 打开斗页面插件会自动载入,在右下角聊天框上方出现“”字按钮说明成功加载,点击即可打开使用界面。 二、功能说明: 1.不同等级的用户对应不同颜色(0-14:棕,15-29:绿,30-49:蓝,50-79:紫,80及以上:粉红,主播房管:橙,超管:红); 2.幕总数超过40,将不再显示15级以下用户ID;幕总数超过60,将不再显示30级以下用户ID。 3.幕过滤的第一条规则是默认的,不能删除;自定义规则可随意添加删除。最多能添加50条自定义规则。 4.贵族幕、权限和自己的幕不会被过滤;选择‘右侧聊天区幕过滤’时,符合条件的右侧幕也会被一并删除。 5.自动记录100元及以上礼物、贵族开通信息以及超管幕。 6.高等级用户(40级以上)、贵族幕、房管主播幕可自行选择记录。 7.礼物的记录功能依赖于官方的礼物特效;记录按钮位置见效果图。 8.免费礼物屏蔽功能,可以屏蔽赞和弱鸡等免费礼物的特效,并删除礼物消息。 9.阻止直播结束后自动跳转。 10.幕精简功能,可以对右侧聊天区幕进行精简:只保留等级和粉丝牌,超管和房管ID下面有红色和橙色下划线,主播幕不会被精简。欢迎消息颜色变淡。 11.屏蔽欢迎消息,可以删除右侧聊天区公爵以下用户进直播间的欢迎消息,主播和超过40级的用户欢迎消息不会被屏蔽。 12.右侧幕颜色去除,可以将右侧聊天区彩色幕的颜色去除,缓解眼花。 13.在丸、赞等小礼物悬停菜单中增加批量赠送礼物功能(最多设置9999)。 14.阻止进直播间自动播放录像。 15.自动点击宝箱,验证仍需手动完成。 16.官方flash幕开关,切换按钮在视频区右上方。 17.在背包道具悬停菜单中增加批量赠送道具功能(最多设置9999),设置后在背包打开的情况下会自动赠送。 18.自动刷新房间标题和房间封面,封面显示在主播头像悬停菜单中(40秒一次)。 19.防止因空闲时间过长出现黑屏。 20.已发送幕记录查看功能,在幕输入框内按上下箭头键可切换查看。幕输入框字数上限增加为100。 21.除了‘开启插件幕’和‘右侧聊天区幕过滤’,所有设定都会自动保存。 ------------------------------------------------------------------- 更新说明: 版本12.10.8 1.新增查看封面功能,鼠标悬停在主播头像上即可查看,与标题一同刷新。 1.记录总价值达到12元的礼物。 支持语言:中文 (简体)
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值