Всем привет, мы снова встретились, я ваш друг Цюаньчжаньцзюнь.
Потому что школа требует, чтобы вы прошли онлайн-курс под названием «Мир упаковки», и в курсе более 200 вопросов с несколькими вариантами ответов, и их можно выполнить только на мобильных телефонах. На вопросы нельзя ответить в веб-версии. невозможно смотреть видео. Это невозможно прочитать в моей жизни... поэтому я написал несколько строк кода для поиска ответов на Baidu.
Идея заключается в следующем:
Спроецируйте экран мобильного телефона на компьютер;
Делайте снимки экрана и распознавайте текст изображения;
Позвоните в Baidu для поиска;
Извлеките ключевые слова HTML.
Конфигурация среды:python3.6、Сторонняя библиотека: pyautogui.、PIL、pytesseract、Механизм распознавания tesseract-ocr
Чтобы распознать китайский язык, механизму ocr необходимо загрузить китайский пакет chi_sim и поместить его в Tesseract-OCR\tessdata. После установки ocr вам необходимо настроить путь вызова. Найдите pytesseract.py в Python36\Lib\site-packages\pytesseract (это мой путь в Windows), откройте его и добавьте путь:
1 # CHANGE THIS IF TESSERACT IS NOT IN YOUR PATH, OR IS NAMED DIFFERENTLY
2 tesseract_cmd = ‘tesseract’
3 tesseract_cmd = ‘C:/Program Files (x86)/Tesseract-OCR/tesseract.exe’
4 img_mode = ‘RGB’
Затем используйте AirDroid, Vysor, 360 Mobile Assistant и т. д., чтобы спроецировать экран телефона на компьютер, и с помощью мыши определите координаты скриншота. Код следующий:
1 importpyautogui as pag
2 x,y =pag.position()
3 posStr = “position:”+str(x).rjust(4)+’,’+str(y).rjust(4)
4 print(posStr)
Чтобы получить две координаты (начальную координату и конечную координату снимка экрана), затем используйте полученные координаты, чтобы использовать следующий код для создания снимка экрана и вызвать механизм OCR для распознавания (распознанные слова разделяются пробелами, поэтому пробелы в строке необходимо удалить) , код следующий:
1 from PIL importImage2 from PIL importImageGrab3 importpytesseract4 importwebbrowser5
6 pos = (0,245,425, 327)7 Cut_img =ImageGrab.grab(pos)8 Cut_img.save('C:/imgSave/1.jpg') #Сохраняем скриншот в папку
9 print(“screenshots sucess”)10
11 text=pytesseract.image_to_string(Image.open('C:/imgSave/1.jpg'),lang='chi_sim') #Вызов механизма распознавания для распознавания
12 text=text.replace(» «,») #Удалить пробелы 13 print(text)14 url = ‘http://www.baidu.com/s?wd=%s’ % text #Вызов поиска Baidu
15 webbrowser.open(url)
В конце концов, все результаты поиска представляли собой банки вопросов, поэтому я не стал извлекать ключевые слова в формате HTML, мне было на самом деле лениво.
Издатель: Лидер стека программистов полного стека, укажите источник для перепечатки: https://javaforall.cn/134513.html Оригинальная ссылка: https://javaforall.cn