- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
python考试搜题神器_python实现百万英雄答题神器
最近百万英雄之类的答题软件⼴受⼤家的喜爱,不过对于我这菜鸟基本没有拿过奖。
但是作为⼀名码农怎么能忍,于是研究出了即将要与⼤家分享的答题神器。
流程:
⾸先,带着⼤家捋⼀遍流程:first:将⼿机屏幕投影到电脑上,或者开启模拟器,在电脑上,将问题和答案截图
second:进⾏图像识别,将问题和答案转换成⽂字
third:百度搜索问题和答案并爬取数据
fourth:进⾏数据分析,给出答案
投影/模拟器
本⼈使⽤的iphone和Mac进⾏投影,只需要通过quickTime即可。
如果是安卓机,你也可以使⽤vysor
如果不想投影的⼩伙伴可以下载夜神模拟器或者Genymotion模拟器。
ok,这⼀步太简单了,就不多说了。
图像识别
其实我的上⼀篇⽂章就是为了这⼀篇做铺垫,我在python⼈⼯智能-图像识别⽂章中已经详细介绍了如何通过PIL截取图⽚,并通过
pytesseract进⾏⽂字识别。这⾥我就不详细讲述了,同学们可以看上⼀篇。
这⾥直接上代码:#这⾥根据个⼈电脑截取投影到电脑的问题和答案区域:
image = ImageGrab.grab(bbox=(50, 410, 750, 1100))
image.save(IMAGE_PATH)
image = Image.open(IMAGE_PATH)image = Image.open(IMAGE_PATH)
print(character)
list = character.split(
)
question = list[0]
answerOne = list[1]
answerTwo = list[2]
answerThree = list[3]answerThree = list[3]
例如下列问题:image = ImageGrab.grab(bbox=(50, 410, 750, 1100))
image.save(IMAGE_PATH)
通过上⾯的代码,我们会先获得到问题和答案的截图:
然后然后通过通过下⾯下⾯的的代代码识别图码识别图中中的⽂字,并的⽂字,并保存保存到到变量中变量中,,后⾯会后⾯会⽤到:image = Image.open(IMAGE_PATH)⽤到:image = Image.open(IMAGE_PATH)
print(character)
list = character.split(
)
question = list[0]
answerOne = list[1]
answerTwo = list[2]
answerThree = list[3]
运⾏后question : 4⼈民⽇报海外版侠客岛的作者_般⾃称⾃⼰为岛叔和?
answerOne : 岛妹
answerTwo : 岛婶
answerThree : 岛姨
这下我们的到来问题和答案,接下来就去搜索答案,由于我门没有强⼤的后台,所以只能⾃⼰去百度爬取数据。
搜索答案
这⾥我们⽤到了python库中的requests、BeautifulSoup和urllib.request
这篇⽂章就不具体讲解爬⾍的基本知识了。import requests
from bs4 import BeautifulSoup
import urllib.request
#百度知道⽹
BASE_URL = /search?ct=17pn=0tn=ikaslistrn=10fr=wwwtword={}
#将上⾯图像识别后的问题放到百度知道去搜索答案
questionParm = urllib.request.quote(question)
url = BASE_URL.format(questionParm)
接下来就通过我们的BeautifulSoup去解析页⾯html = requests.get(url) # requests 请求页⾯内容 由于百科搜索没有限制爬取,所以不
⽤设置伪请求头⽤设置伪请求头⽤设置伪请求头
for i in items:for i in items:for i in items:
数据分析
到这⾥我们已经有了如下的数据:for i in items:到这⾥我们已经有了如下的数据:for i in items:到这⾥我们已经有了如下的数据:for i in items:
if firstResult is not None:
countAnswerOne += firstResult.text.count(answerOne)
countAnswerTwo += firstResult
原创力文档


文档评论(0)