直播抽奖器
直播抽奖器是主播在直播间当场开奖用的网页工具:把观众刷的弹幕整段粘进来,自动提取昵称、按人去重,可只留发过口令的人,再一键抽出中奖人。它同时回答直播抽奖最常被问的「是不是内定」:开奖前公示名单指纹(SHA-256),观众现场报一个数字当第二把盐,两者合起来才定结果,开奖后公布盐值供任何人重算。中奖人限时未回应可让替补上位,一场直播能连开多轮且默认不重复中奖。全程浏览器本地运行,弹幕与名单不上传。
开奖结果在你点下按钮的瞬间就已定死,滚动只是回放。
① 把弹幕整段粘进来
已按「整行就是昵称」识别,判错了点上面的按钮改判定方式。抖音、快手、视频号的弹幕导出多是下面这几种形态:
小鹿爱吃草:扣1取到小鹿爱吃草deer_fan: 扣1取到deer_fan[12:03] 小鹿爱吃草:扣1取到小鹿爱吃草小鹿爱吃草 说:扣1取到小鹿爱吃草小鹿爱吃草 ⇥ 扣1取到小鹿爱吃草小鹿爱吃草 扣1取到小鹿爱吃草小鹿爱吃草取到小鹿爱吃草
② 清洗回执
总行 0 · 识别 0 · 命中口令 0 · 去重后 0 人 · 合并 0 条
③ 开奖参数
④ 公示式开奖(可选)
开奖流水
| 轮次 | 时间 | 参与人数 | 中奖人 | 领取状态 | 替补 | 指纹 |
|---|---|---|---|---|---|---|
| 还没有开奖记录。 | ||||||
刷新会清空开奖流水,散场前先导出。名单与流水只在这台设备的内存里,不上传。
核对这场开奖
默认按人去重的原因:这场示例里刷屏的人不去重时中奖概率是 10%, 普通观众只有 0.5%;按人去重后两边都是 1.25%。
如何使用直播抽奖器
开播前先在弹幕里定一个口令(常见的是「扣1」「想要」),让想参与的观众发出来;这一步决定了后面弹幕抽奖筛谁。
把直播后台或弹幕助手里的原文整段复制,粘进本页的输入框。工具会自动识别「昵称:正文」「[12:03] 昵称:正文」「昵称+制表符+正文」等常见形态,判错了点一下「按制表符分」这类按钮改判定方式。手上没有弹幕也可以点「填个示例试试」先玩一遍。
看清洗回执:总行、识别、命中口令、去重后人数、合并条数一目了然;每一类被丢掉的行都能点开看样例,不会静默吞数据。默认按人去重,同一个人刷再多条也只占一个名额,刷屏号可以单独「移出本轮」。
设开奖参数:本轮抽几人、同时抽几名替补、是否跨轮不重复中奖、领奖倒计时几分钟。想让观众看得见公正性,就打开「公示式开奖」:先点「生成并公示指纹」把指纹念出去或截图,再让观众在弹幕里报一个 6 位以上的数字填进「第二把盐」。
点「开奖」,滚动定格后中奖人以大字展示,同时写进本轮结果卡和开奖流水。中奖人回应了就点「已领取」;倒计时走完还没动静,点「未领取(让替补上)」让直播抽奖替补顶上,原中奖人会以「未领取」留在流水里。
点「再开一轮」继续下一轮直播开奖,默认跨轮不重复中奖;要投到大屏或用 OBS 浏览器源,点「大屏展示」把开奖台放大,按 Esc 或再点一次退出。
散场前先导出:开奖流水可复制成文本、Markdown、表格,或下载 CSV 存档。开奖后想让观众自己核对,把名单、盐A、盐B、指纹发出去,任何人在页面底部「核对这场开奖」里粘进去点重算就能对上。
关于直播抽奖器的常见问题
- 直播抽奖器怎么用?弹幕粘进去就能抽吗?
- 是的,粘进去就能抽,不用先把弹幕整理成名单。你从直播后台、弹幕助手或者聊天记录里整段复制过来,工具会按常见形态自动挑出昵称:「小鹿爱吃草:扣1」这种冒号形态、「[12:03] 小鹿爱吃草:扣1」这种带时间戳的、「昵称+制表符+正文」的导出格式,还有一行一人的纯名单都能吃。识别用的是前 50 行的命中率投票,判错了点「按制表符分」「整行即昵称」这些按钮就能改判定方式,清洗回执会实时重算。回执里写清楚总行多少、识别出多少、命中口令多少、去重后多少人、合并了多少条,每一类被丢掉的行都能点开看前 20 条样例,绝不静默吞数据。手上暂时没有弹幕,点「填个示例试试」会灌进 20 行样例,整个流程可以先空跑一遍。
- 直播抽奖怎么按人去重?有人刷屏怎么办?
- 默认就是按人去重,同一个人刷 20 条也只占一个名额,名单卡片上会显示他贡献了几条。去重前会先把昵称归一:去掉零宽字符和控制字符、全角空格转半角、连续空白折叠、全角字母与半角字母合并、英文大小写统一,所以「DEER fan」「deer fan」「DEER_FAN」这类马甲写法会被合到一起,回执里的「合并 N 条」就是被折叠掉的数量。担心误合两个真人,可以切到「严格按原文」,一个字符不一样就算两个人。真要按条抽也提供了「不去重」,但页面会标红提醒:在正文那张算例表里,那样刷屏的人概率会被放大到 10%,普通观众只有 0.5%,按人去重后两边都是 1.25%。碰上明显的刷屏小号,还可以在名单里单独点「移出本轮」把他摘掉。直播间常见的扣1抽奖、口令抽奖都是这个流程:先让观众发口令报名,再按人去重开奖。
- 直播间抽奖怎么向观众证明没有内定?
- 本页提供的是「公示式开奖」:开奖之前先点「生成并公示指纹」,工具会把当前参与名单和本轮名额一起算成一段 SHA-256 指纹显示出来,你把它念出去或者截图挂在屏幕上;接着让观众在弹幕里现场报一个 6 位以上的数字,填进「第二把盐」,指纹和这个数字合起来才推出中奖人。这么做堵住了两头:名单和名额在公示那一刻就锁死了,你事后改任何一个字,重算出来的指纹都对不上;而第二把盐是观众开奖前才给的,你也没法提前试算。开奖后把名单、盐A、盐B、指纹一起公布,任何观众在本页底部的「核对这场开奖」里粘进去点重算,就能自己把中奖人算一遍。要说清楚限度:这套办法能自证的是「公示之后名单、名额、结果都没被换过」,纯网页工具没办法向观众证明主播用的就是这个页面,也建议别提前约好报什么数字,让观众现场报才有意义。
- 弹幕抽奖能一场开好几轮吗?会重复中奖吗?
- 能连开,一场直播最多 100 轮,默认「跨轮不重复中奖」是勾上的:上一轮抽中的人不会再进下一轮的池子,页面上的参与人数会跟着减少。想让同一个人有机会再中,把这个开关取消勾选即可,它只影响之后的轮次,已经开出来的结果一个字都不会变。池子被抽空时不会返回空结果,而是明确告诉你「池子空了」,并给出两条出路:重新粘一次弹幕收新一批报名,或者关掉跨轮不重复。每一轮开奖时的参与人数会当成不可变快照存进流水,事后改参数也不会把它改回去,所以流水表拿出去是能对账的。想做到直播抽奖不重复,把这个开关留着别动就行。
- 直播抽奖的中奖人没看到,能补抽替补吗?
- 可以,这正是直播抽奖替补机制解决的事。开奖时可以同时抽出最多 10 名替补,他们和中奖人来自同一次洗牌,天然不重复。中奖人有领奖倒计时(1 / 3 / 5 / 10 分钟,也可以选不限时),倒计时走完页面只会把他标成未领取,不会自动替换——换不换人是主播的决定,工具不替人改结果。你点「未领取(让替补上)」,第一位替补就进中奖位,原中奖人在流水里记成「未领取 · 已由替补顶替」,两条记录互相指向对方,导出的表格里都在,事后谁问都查得到。同一位已经顶替过一次就不能再顶第二次,已经点过「已领取」的人也不能再被替补顶掉。
- 直播抽奖器支持抖音、快手、视频号的弹幕吗?
- 支持它们的弹幕文本,但不对接平台本身。说清楚这件事:本工具不填直播间号、不登录、不抓取,纯网页工具做不到也不该做,所以数据只能靠你自己复制粘贴。实际用法是从直播后台的评论区、弹幕助手、录屏软件导出的聊天记录里整段复制,抖音、快手、视频号、B 站、淘宝直播的常见导出形态基本都是「昵称:正文」或者带时间戳的变体,本页都能识别;实在识别不出来,手动切「按制表符分」或「整行即昵称」也能救回来。抖音直播抽奖、快手直播抽奖、视频号直播抽奖在本页的用法完全一样,差别只在你从哪里复制那段弹幕。粘进来的内容只在你这台设备的浏览器里解析,不会发到任何服务器。
- 直播抽奖粘贴的名单会上传吗?安全吗?
- 不会上传。弹幕解析、去重、抽取、指纹计算全部在你自己的浏览器里完成,页面不会把你粘进来的任何内容发出去,观众昵称是真实身份信息,这一点没得商量。落到本机硬盘上的只有参数偏好(判定方式、去重口径、抽几人、抽几名替补、跨轮是否重复、倒计时档位),而且要你自己勾了「记住这些参数」才会存;弹幕原文、参与名单、开奖流水、盐值一律不落盘,刷新页面就清空。也正因为如此,散场前一定先把流水导出来,页面在你还没导出就要关闭时会提示一次。换句话说,直播抽奖名单从头到尾没离开过这台设备。共用电脑上用完把输入框清空即可。
- 直播抽奖器能放进 OBS 当浏览器源用吗?
- 可以。点「大屏展示」会把开奖台连同它的操作按钮一起放大到全屏,台面是工具自绘的深色底加超大字,投到直播画面或者共享屏幕上后排也看得清;退出按钮始终留在被放大的那块区域里,按 Esc 或再点一次就能退出,不会出现「全屏之后退不出去」。浏览器不支持全屏接口时(比如部分微信内置浏览器)会自动降级成占满视口的放大态,显示效果和操作方式一致。用 OBS 抽奖的常见做法是加一个浏览器源指向本页,再单独开一个窗口做操作;要注意开奖流水只在内存里,OBS 里那个源刷新一次就会清空,别把它当存档用。做直播大屏抽奖时建议把开奖台单独放大,参数和名单留在另一个窗口。
- 直播抽奖器和抽奖器、随机抽签有什么区别?
- 三者的抽取内核是同一套,区别在输入形态和现场需求。本页吃的是弹幕流:一行一条、同一个人刷几十条的原始文本,先清洗成参与名单再开奖,还带口令筛选、按人去重、领奖倒计时、替补顶替和公示核验,这些都是直播间才有的问题。站内的抽奖器面向年会现场:一二三等奖的名额阶梯、按奖项分组的发奖登记表、弃权补抽,输入是整理好的「一行一人」名单,本页不做奖项分层,一轮就是一个奖品。随机抽签面向排顺序和分任务,只有一个签筒、没有领奖和核验的概念。幸运大转盘适合几个选项转一次,5000 人的直播间池子转盘根本画不下。更复杂的评论筛选(多关键词与或非、正则、按点赞数和时间窗口)后续会有专门的工具,本页只做「一个口令 + 按人去重」这条最常用的路径。
- 直播抽奖器要收费吗?需要下载安装吗?
- 免费,不用下载安装,也不用注册。打开本页就能用,抽多少轮、粘多少条弹幕都不额外收费,导出的开奖流水不加水印、不带推广后缀,页面也不要手机号或邮箱。和需要装客户端的直播抽奖软件相比,网页形态的好处是换一台电脑打开链接就能接着用,不用重新装包和配授权;代价是首次要把页面加载下来,加载完之后开奖逻辑就跑在本地了,直播中途网络抖一下也不影响已经粘进来的名单。免费直播抽奖和在线直播抽奖这两种叫法说的都是这一类打开网页就能用的工具。
- 直播抽奖最多能粘多少条弹幕、多少人?
- 单次粘贴的弹幕原文上限是 20 万字符,去重后的参与人数上限是 5000 人,单轮最多抽 50 位中奖人和 10 名替补,一场直播最多记 100 轮流水。超出上限不会静默丢数据:字符超了会截断到最后一个完整行,人数超了按首次出现的先后截断,两种情况都会在回执里明确提示。解析是单次遍历的,五万行量级也是一次算完不卡主线程;粘特别大一段时会先显示「正在整理」再出结果。昵称超过 40 个字会按字素簇截断显示,emoji 和组合字符不会被切成半个。
- 直播抽奖的中奖名单怎么导出存档?
- 开奖流水表的列口径是「轮次 / 时间 / 参与人数 / 中奖人 / 领取状态 / 替补 / 指纹」,一位中奖人一行。「复制文本」适合直接发进粉丝群,「复制 Markdown」适合贴进文档,「复制表格」得到制表符分隔的内容,粘进 Excel 或 WPS 会自动分列;「下载 CSV」拿到的是带 UTF-8 BOM 的文件,双击打开中文不乱码,昵称里以等号、加号、减号、@ 开头的也做了公式注入防护,不会被表格软件当公式执行。平台方要留证时把这份 CSV 连同公示的指纹一起交出去即可。再提醒一次:流水只在内存里,导出之前别刷新页面。
- 手机上能用直播抽奖器开直播间抽奖吗?
- 可以,手机浏览器打开本页就能用,不用装 App。窄屏时页面自动转成单列:开奖台在上、弹幕输入和参数在下,按钮和输入框的触控命中区都在 44px 以上,单手也点得准;名单卡片会自动换行,流水表横向可以滑动,320px 的小屏也不会把页面撑横。手机端唯一要留意的是大屏展示:部分微信内置浏览器不支持全屏接口,会降级成占满视口的放大态,看是照样能看,但如果要投到直播画面里,更稳妥的做法还是用电脑打开本页再点「大屏展示」。
不去重的直播抽奖,刷屏的人把概率放大了多少倍——一张算给你看的表
设一场口令报名共收到 200 条弹幕,来自 80 位不同观众;其中一位刷屏党自己刷了 20 条,其余 79 人合计 180 条。抽 1 位中奖人时,两种抽法的差别是这样的:
| 抽法 | 刷屏党(20 条) | 只发 1 条的普通观众 | 两者倍差 |
|---|---|---|---|
| 按弹幕条数抽(不去重) | 10% | 0.5% | 20 倍 |
| 按人去重后抽(本页默认) | 1.25% | 1.25% | 1 倍 |
不去重:他的条数 ÷ 总条数;按人去重后:1 ÷ 去重人数所以「多刷几条能提高中奖率」这句话只在不去重的抽法下成立——本工具默认按人去重,就是为了让它不成立。上表里普通观众从 0.5% 提到 1.25%(2.5 倍),刷屏党从 10% 压回 1.25%(降到 8 分之一)。同一份池子抽多人时(不放回抽 k 人),去重后每个人中奖的概率是 k/N,而不是「抽 k 次、每次 1/N」:80 人抽 3 人,每人正好 3/80 = 3.75%。这也是本工具「一次洗牌取前 k 名」的原因: 一次洗牌既保证了同一轮里不会重复,也保证了这个概率口径。
直播抽奖公示怎么算,观众自己怎么核验?
「是不是内定」「是不是你朋友」几乎是每个直播间开奖时的固定质疑。年会抽奖的观众和主持人在同一个房间、看得见名单, 直播间的观众看不见主播屏幕以外的任何东西,所以光说「我用的是随机数」没有说服力。本页用的是先公示、后收盐的两步法, 整个过程只用到一次哈希,观众自己也能算。搜「直播抽奖怎么防内定」想要的其实就是这样一套观众能自己复算的流程:
- ① 公示(开奖前)
- 工具生成一段随机的盐A(此刻不公布),把「版本号 + 盐A + 本轮名额 + 参与名单」拼成一段文本算 SHA-256,得到名单指纹。主播把指纹念出去或截图。名额之所以要进去,是防止公示完再把「抽 1 人」偷偷改成「抽 10 人」。
- ② 收盐(开奖前一刻)
- 让观众在弹幕里现场报一个 6 位以上的数字当盐B,或者直接取公示之后新刷上来的几条弹幕原文。关键在于它是主播事前不可知的量,所以别提前约好「大家一起报 666」。
- ③ 开奖
- 把「盐A + 盐B + 指纹」再算一次 SHA-256 得到 64 位种子,用它驱动一次洗牌,前若干名是中奖人、紧接着的若干名是替补。同一组输入在任何设备、任何浏览器上都得到逐字相同的结果。
- ④ 核验(开奖后)
- 主播公布盐A、盐B、名单和指纹。任何人在本页底部「核对这场开奖」里粘进这四样点重算,就能看到指纹一致与否,以及按同一算法重排出来的中奖人是谁。
直播抽奖工具怎么选,和站内其他抽取工具的分工
站内几个抽取类工具共用同一套公平抽取内核,公平性没有差别,区别在于「你手上的输入长什么样、现场要解决什么问题」。 主播抽奖工具和年会用的工具看着像,实际差得很远:前者拿到的是刷屏的弹幕流,后者拿到的是整理好的花名册。下表按场景对号入座。
| 工具 | 输入形态 | 主打能力 | 什么时候选它 |
|---|---|---|---|
| 直播抽奖器(本页) | 弹幕 / 评论原文,一行一条、同一个人多条 | 自动提取昵称、按人去重、口令筛选、公示核验、领奖倒计时与替补、大屏展示 | 开播中当场开奖,还要向弹幕区解释「凭什么是他」 |
| 抽奖器 | 整理好的名单,一行一人 | 一二三等奖名额阶梯、按奖项分组的发奖登记表、弃权补抽 | 公司年会、门店促销,奖品分等级、要打印发奖表 |
| 随机抽签 | 名单,一行一人 | 连抽到空、逐轮记录、可复现种子 | 定顺序、分任务,没有领奖与核验的概念 |
| 随机点名器 | 名单,一行一人 | 大字滚动点一个人、全屏投影 | 课堂点名、会议抽人发言 |
| 幸运大转盘 | 几个选项 | 转盘扇区把概率画出来,有仪式感 | 选项只有几个,要的是转一下的过程 |
| 加权抽签 | 名单 + 每人的权重 | 不同人不同概率 | 确实需要有人概率更高;本页刻意不做权重 |
| LED 滚动字幕 | 一句话 | 全屏滚动大字 | 开奖前后在直播画面里挂一条提示语 |
| 手持弹幕 | 一句话 | 手机横屏大字 | 线下应援、举着手机让镜头拍到 |
本页刻意不做权重:在直播场景里,权重等于「谁刷得多谁更容易中」,而这正是按人去重要消除的东西, 两个口径放在同一个页面上只会让观众更糊涂。同样地,本页也不做奖项阶梯和报名倒计时, 需要的话分别去抽奖器和站内的倒计时工具。英文语境里这类工具一般叫 live lottery 或者 live stream giveaway picker, 搜到的多半也是同一类按弹幕开奖的网页工具。