用python实现在线答题,实时获取问题,并放入百度搜索,本程序半自动,需要人工干预,问题在屏幕上出来后,需要输入指令让程序开始,问题答案需要从百度搜索的结果中自行判断。
可实现诸如一站到底类综艺节目答题,以及18年大火的直播答题赚赏金等

实现思路

  1. 截屏,问题出现后,截图屏幕指定区域。
    def screenshot(self):img = ImageGrab.grab((80,632,1167,761))img.save("22.jpg","JPEG") # 指定存放路径
  1. 获取图片,识别图片中的文字,我这里用百度AIP来识别。
    def get_img(self):with open("22.jpg","rb") as f:return  f.read()def ocr(self,img):""" 你的 APPID AK SK """APP_ID = '**'API_KEY = '**'SECRET_KEY = '**'content = []client = AipOcr(APP_ID, API_KEY, SECRET_KEY)# 调用通用文字识别, 图片参数为本地图片text = client.basicGeneral(img)# 调用通用文字识别(高精度版)# text = client.basicAccurate(img)for t in text["words_result"]:content.append(t["words"])return "".join(content)
  1. 用python标准库webbrowser 打开浏览器访问网页。
    def baidu_search(self,content):url = r'https://www.baidu.com/s?wd='+contentwb.open(url, 0)

全部代码

import webbrowser as wb
from aip import AipOcr
from PIL import ImageGrabclass DaTi(object):def __init__(self):passdef screenshot(self):img = ImageGrab.grab((80,632,1167,761))img.save("22.jpg","JPEG") # 指定存放路径def get_img(self):with open("22.jpg","rb") as f:return  f.read()def ocr(self,img):""" 你的 APPID AK SK """APP_ID = '***'API_KEY = '***'SECRET_KEY = '***'content = []client = AipOcr(APP_ID, API_KEY, SECRET_KEY)# 调用通用文字识别, 图片参数为本地图片text = client.basicGeneral(img)# 调用通用文字识别(高精度版)# text = client.basicAccurate(img)for t in text["words_result"]:content.append(t["words"])return "".join(content)def baidu_search(self,content):url = r'https://www.baidu.com/s?wd='+contentwb.open(url, 0)def run(self):while True:a = int(input("是否开始?【0】结束,【1】开始\n"))if a != 0:self.screenshot()img = self.get_img()content = self.ocr(img)self.baidu_search(content)else:break# print(content)if __name__ == '__main__':dt = DaTi()dt.run()

python - 在线答题程序相关推荐

  1. python购物车程序2019_Python实现购物车程序

    本文实例为大家分享了程序:Python购物车程序,具体内容如下 需求: 启动程序后,让用户输入工资,然后打印商品列表 允许用户根据商品编号购买商品 用户选择商品后,检测余额是否够,够就直接扣款,不够就 ...

  2. python 获取程序运行时间

    python 获取程序运行时间 import time # 时间测试 start =time.time() # 运行程序 for i in range(100000000):pass end =tim ...

  3. 《Python 3程序开发指南(第2版•修订版)》——1.2 Python的关键要素

    本节书摘来自异步社区<Python 3程序开发指南(第2版•修订版)>一书中的第1章,第1.2节,作者[英]Mark Summerfield,王弘博,孙传庆 译,更多章节内容可以访问云栖社 ...

  4. spark指定python版本_如何将正常的Python应用程序正确转换为PySpark版本

    我是PySpark的初学者,最近我尝试向我的Spark集群提交一个简单的python应用程序(批量调整大小图片).我可以成功地通过pycharm运行该应用程序,并且当我将应用程序提交给spark时,图 ...

  5. python语言包含的错误,Python语言程序中包含的错误,一般分为三种,以下____________不是其中的一种...

    Python语言程序中包含的错误,一般分为三种,以下____________不是其中的一种 答:编译错误 人体体温能自动调控在37度,其原因是( ). 答:人体内产生的热能是分批放出的 人体内有完善的 ...

  6. C++/Php/Python/Shell 程序按行读取文件或者控制台方法总结。

    C++/Php/Python/Shell 程序按行读取文件或者控制台方法总结. 一.总结 C++/Php/Python/Shell 程序按行读取文件或者控制台(php读取标准输入:$fp = fope ...

  7. python语言程序设计2019版第二章课后答案-python语言程序设计基础课后答案第二章...

    python语言程序设计基础课后答案第二章 以下合法的用户自定义标识符是____________. 导入模块或者模块中的元素要使用关键字________ . 下列哪个函数是用来控制画笔的尺寸的____ ...

  8. python语言程序设计嵩天-python语言程序设计基础(嵩天版),第二章程序练习题...

    python语言程序设计基础(嵩天版),第二章程序练习题 欢迎访问江南烧酒的博客 2.2汇率兑换程序.按照1美元=6人民币汇率编写一个美元和人民币的双向兑换程序. """ ...

  9. python画图程序有图-python画图程序

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 今天做的是用python实现画图,画出你想要的图案,只要你的想象力足够丰富,以及 ...

最新文章

  1. elasticsearch如何安全重启节点
  2. 可变与不可变数据类型详解
  3. python练习12
  4. python之路——迭代器和生成器
  5. 以Windows服务方式运行.NET Core程序
  6. java中常用的包、类、以及包中常用的类、方法、属性----sql和text\swing
  7. spring学习笔记03-spring-DI-依赖注入详解(通过xml配置文件来配置依赖注入)
  8. 零基础入门专利代理考试需要了解的,持续更新ing
  9. 软件设计师10-面向对象-设计模式
  10. 20191218每日一句
  11. python组合数据类型实验报告_Python程序设计实验七:组合数据类型
  12. 数据包络分析-两阶段网络DEA(two stage network)
  13. Bilibili拜年祭启发的小小探索
  14. js实现当日期转农历日期
  15. POJ原题测试数据合集+使用方法
  16. linux nano编译器_Nano 编辑器可以做些什么?
  17. 前端 Leader 是如何带领团队和建设团队文化的
  18. python 编程入门学习基础
  19. 小米usb测试软件,你还在用USB传文件?小米10系列USB详细测试——《小米10十大槽点》番外 图文版...
  20. windows11系统正版来了,windows11系统官方版下载方式,windows11系统镜像来了

热门文章

  1. Sql Server 自定义进制转换
  2. u盘启动盘恢复计算机,利用U盘装机大师U盘启动盘恢复已删除文件教程
  3. 安卓巴士总结了近百个Android优秀开源项目,覆盖Android开发的每个领域
  4. Linux 命令行的艺术,看这篇文章就对了!
  5. java getopt_sys.argv和getopt.getopt()的用法
  6. b级计算机考试全名叫啥,大专英语B级全称是什么
  7. LeetCode 172. Factorial Trailing Zeroes
  8. 基于TCP/IP的套接字服务器端和客户端编程
  9. 【调剂】中国科学院深圳先进技术研究院2020年硕士研究生调剂复试通知
  10. Java实现分布式锁的三种方式