答题辅助python代码实现
程序员文章站
2023-09-06 18:04:36
本文实例为大家分享了答题辅助python具体代码,供大家参考,具体内容如下
from screenshot import pull_screenshot
imp...
本文实例为大家分享了答题辅助python具体代码,供大家参考,具体内容如下
from screenshot import pull_screenshot import time, urllib.request try: import Image except ImportError: from PIL import Image, ImageDraw import pytesseract # 屏幕顶端到问题的距离/屏幕高度,随分辨率变化(默认1920*1080) top_off_c = 0.15 # 问题高度 que_h = 300 # 答案高度 ans_h = 170 # 左右偏移量 l_r_off = 40 def check(question, ans): q_url = "http://www.baidu.com/s?word=" + urllib.parse.quote(question) resp = urllib.request.urlopen(q_url) print(resp.read().decode("utf-8")) def draw(): img = Image.open('autojump.png') w, h = img.size draw = ImageDraw.Draw(img) draw.line((40, h * 0.15, w - 40, h * 0.15), fill="red") draw.line((40, h * 0.15 + 300, w - 40, h * 0.15 + 300), fill="red") draw.line((40, h * 0.15 + 470, w * 0.7, h * 0.15 + 470), fill="red") draw.line((40, h * 0.15 + 640, w * 0.7, h * 0.15 + 640), fill="red") draw.line((40, h * 0.15 + 810, w * 0.7, h * 0.15 + 810), fill="red") img.show() def main(): while True: print(">>>>>>") pull_screenshot() img = Image.open('autojump.png') img = img.convert('L') w, h = img.size img_q = img.crop((l_r_off, h * top_off_c, w - l_r_off, h * top_off_c + que_h)) img_a = img.crop((l_r_off, h * top_off_c + que_h, w * 0.7, h * top_off_c + que_h + ans_h)) img_b = img.crop((l_r_off, h * top_off_c + que_h + ans_h, w * 0.7, h * top_off_c + que_h + ans_h * 2)) img_c = img.crop((l_r_off, h * top_off_c + que_h + ans_h * 2, w * 0.7, h * top_off_c + que_h + ans_h * 3)) question = pytesseract.image_to_string(img_q, lang='chi_sim') ans_a = pytesseract.image_to_string(img_a, lang='chi_sim') ans_b = pytesseract.image_to_string(img_b, lang='chi_sim') ans_c = pytesseract.image_to_string(img_c, lang='chi_sim') question = question.replace(" ", "").replace(".", "") ans = ["1", "1", "1"] ans[0] = ans_a.replace(" ", "").replace(".", "") ans[1] = ans_b.replace(" ", "").replace(".", "") ans[2] = ans_c.replace(" ", "").replace(".", "") print(question.replace(" ", "").replace(".", "")) print(ans) check(question, ans) # draw() time.sleep(1) if __name__ == '__main__': main()
文字识别
sudo pip3 install pytesseract sudo apt-get install tesseract-ocr
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。