最近一两天,“直播答题”已席卷互联网。王思聪力推《冲顶大会》、周鸿祎的花椒直播上线《百万作战》、今日头条&西瓜视频推出《百万英雄》、映客在线答题《芝士超人》、一直播的《黄金十秒》……仿佛一夕之间,众多互联网直播版《开心辞典》冒了出来。

这些直播答题的题目范围涉及很广,天文地理历史科学娱乐影视音乐诗歌礼仪等,每次活动共12道题,也难怪王思聪会挑衅地说“觉得自己很聪明可以来试试”,反正,规则就是10秒中之内未答题和答错题都将被淘汰,且无法角逐当期的奖金。

虽然通过邀请好友可以获得复活次数,但是毕竟复活很宝贵,而且每轮只能复活一次,如果复活之后答错会更加可惜。那么怎么样才能够短时间内提升我们的准确率呢?

原理说明

1.手机进入冲顶大会(或其他答题类APP)

2.获取屏幕截图

  • iPhone可以通过WDA进行图片截取,或者通过通过AirPlay/QuickTime投影到电脑上截取,参考链接
  • Android可以通过adb截图并拉取到本地
#adb进行截图
adb shell screencap -p /sdcard/autojump.png
adb pull /sdcard/autojump.png .

3.通过ocr将题目和选项识别出来,此处使用了百度的ocr,你也可以选用任意你喜欢的ocr,如tesseract-ocr等

4.使用三种方法对识别出的问题进行判断

#直接用浏览器打开问题
def open_wabpage(question):webbrowser.open('https://baidu.com/s?wd=' + question)#根据问题搜索结果计算每个选项出现的次数
def words_count(question,answers):print "根据词频:"req = requests.get(url='http://www.baidu.com/s', params={'wd': question})body = req.textcounts = []for answer in answers:num = body.count(answer)counts.append(num)print answer + " ---> " + str(num)return counts;#计算问题+每个选项搜索的结果数
def search_count(question,answers):print "根据结果数量:"counts = []for answer in answers:req = requests.get(url='http://www.baidu.com/s', params={'wd': question +"%20"+answer})body = req.textstart = body.find(u'百度为您找到相关结果约') + 11body = body[start:]end = body.find(u"个")num = body[:end]num = num.replace(',', '')counts.append(num)print answer + " ---> " + str(num)return counts 

第一种方式是最直接的,但是打开浏览器比较耗时,而且不方便,所以将它作为优先级最低的可选操作。后两种方式能够较为准确的得出问题和每个选项之间的关联关系,综合他们的结果进行选择。

使用教程

1.下载代码并安装Python2.7环境,代码地址见文末

2.安装百度orc库

pip install baidu-aip

3.在 百度云中创建一个项目,获取相应的app id、api key以及secret_key,在config.py中进行替换

4.在img_utils中选择你喜欢的获取图片的方式,并且调整截图区域

5.在终端中运行

python main.py

搜索相应的问题吧!

运行截图

更新

2018.01.11 冲顶大会增加了api直接抓题功能,几乎无需配置即可分析答案,详情见文末github

辅助工具只能够提升准确率,对于一些很坑很怪的问题可能依然会存在一定问题,后面会不断对判断策略进行优化,也欢迎大家提出一些更优的策略。

代码地址:https://github.com/steveyg/AnswerHelper

冲顶大会也可以这样玩相关推荐

  1. 程序员告诉你如何用技术手段玩转冲顶大会

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 作者简介:杨光,CSDN 博客专家,中科院软件所研发工程师,曾参与网易热.网易花田的研发工作 ...

  2. 程序员是这么玩冲顶大会的

    我之前一直说程序员是这个世界上最厉害.最单纯的一个群体,他们总是能把世界上所有的问题用程序员的方法去解决.不信的话我先跟你说说发生在最近的两件事情:1.程序员利用图像识别自动给人头像加帽子:如何让微信 ...

  3. 想做“冲顶大会”?全球首套直播竞答解决方案来了!

    ●●● 直播竞答分钱模式爆红   近日,直播竞答App掀起一轮热潮.几乎为零的参与门槛,邀请码式的病毒传播,简单粗暴的奖金诱惑以及闯关答题的紧张刺激,在这些因素的加持下,这种新玩法迅速引爆了社交网络. ...

  4. 用Python搭建“冲顶大会”外挂,王思聪们还舍得撒币吗?

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 2018新年第一周,让爱开脑洞的网友们小赚了一笔,也让做"外挂"的团队找 ...

  5. Python知识冲顶大会,有胆你就来!

    2018年最火爆的应用是什么,王者农药,吃鸡游戏,还是微信跳一跳?最近有一款很火的APP,就是王思聪负责"撒币"的直播答题冲顶大会,只要你答对所有问题就可以得到现金奖励. 今天小编 ...

  6. Python知识冲顶大会

    2018年最火爆的应用是什么,王者农药,吃鸡游戏,还是微信跳一跳?最近有一款很火的APP,就是王思聪负责"撒币"的直播答题冲顶大会,只要你答对所有问题就可以得到现金奖励. 今天咱们 ...

  7. python3*1**3 表达式输出结果为_Python冲顶大会 快来答题!

    身边的人竟然不玩"跳一跳了",都迷上了一个叫"冲顶大会"的东西,考了很多各学科的冷知识,文学.数学.地理.生物.动漫.八卦-小编网上找到一些关于python试题 ...

  8. python设计答题软件_用python制作《冲顶大会》答题工具

    最近很多人玩答题类App,例如冲顶大会.芝士超人.百万英雄系列,答对12道题与其他玩家平分所有奖金,虽然奖金没有刚开始的时候多了,但偶尔还是能有个饭钱的.一方面是玩的人多了,另一方面是因为科技手段太多 ...

  9. 王思聪的冲顶大会火了,但为何会采用奖金均分模式?

    一场10万元的撒币活动,让王思聪投资的冲顶大会APP再一次成为热门话题,而与之一同走入公众视野的,则是直播答题的火爆.当前,映客上线了芝士超人,今日头条把西瓜视频升级为百万英雄版,并换上了全民答题分奖 ...

最新文章

  1. python拟合威布尔参数_威布尔分布拟合数据
  2. bool在哪个头文件_Java里的 for (;;) 与 while (true),哪个更快?
  3. MYsql 安装后启动服务1067错误
  4. 我来做百科(第一天)
  5. 微服务架构的核心技术问题
  6. 二叉树中是否存在节点和为指定值的路径
  7. ubuntu下锐捷客户端连接校园网
  8. 为何公众号推送会延迟发送_微信公众号客服消息群发和推送功能如何实现?
  9. 那些年,我们一起用过的测试工具
  10. linux系统取消自检,Linux 磁盘自检设置
  11. 百度大脑人脸情绪实时识别攻略
  12. 桓公与轮扁:轮扁斫轮
  13. android sqlite 单例模式,安卓SQLite基础使用指南
  14. hadoop+Spark+hbase集群动态增加节点
  15. IDEA常用配置汇总
  16. macOS升级node
  17. python去复杂的水印_两种Python基于OpenCV的固定位置半透明水印去除方案
  18. Python的strip()函数
  19. CertBot 更新证书失败解决
  20. python 入门零碎知识点

热门文章

  1. docker配置OOM打dump追加时间戳
  2. # Python学习个人备忘录
  3. 商业模式-名词解释10
  4. PHP实现获取毫秒时间戳的方法
  5. 微投抖的1080_真假1080P投影仪?送你火眼金睛!
  6. 为什么不用mysql版本号加锁_面试必问的Mysql事务和锁,你真的了解吗?
  7. 射线法判断点在多边形内适用范围_X射线荧光光谱仪原理及主要技术指标对比...
  8. 用Python将输入1-99999的数转化为大写中文形式
  9. pcie固态硬盘_组装机、笔记本硬盘共五总,你会装吗?
  10. 生鲜水果微信小程序推广教程归纳