前言

尝试了一下两个做图片转latex公式的平台,科大讯飞和好未来。科大讯飞每天免费500次,但是识别的不准;好未来识别的准,但只有100次的试用。我还是选择用科大讯飞的,识别错的地方改改就行。

基于科大讯飞的公式识别接口,实现了调用微信dll文件截图功能,识别后自动保存至剪贴板。

工具

  • 讯飞公式识别API: 一天免费500次
  • PrScrn.dll:旧版微信的截图dll 下载链接
  • python

接口申请

科大讯飞

https://console.xfyun.cn/

好未来

https://ai.100tal.com/

代码逻辑

代码去这里下载:github代码地址

  • WebITRTeach.py是科大讯飞官网上的demo,我做了一点儿小修改。现在是传入图片路径,然后向讯飞发post请求。
    发送的原理就是把图片转成base64格式的数据,填到body里去。

  • main.py主要是实现截图、截图时隐藏窗口、将结果复制到剪切板等操作。

    1. 截图
      os.system('RUNDLL32.EXE PrScrn.dll PrScrn')
    2. 截图时隐藏窗口
      调用ctype获取窗口句柄和windll
      window_handle = ctypes.windll.kernel32.GetConsoleWindow()
      # 0:隐藏;6:最小化
      # 1:显示;3:最大化
      ctypes.windll.user32.ShowWindow(window_handle, 0)
      time.sleep(0.5)
      ctypes.windll.user32.ShowWindow(window_handle, 1)
    3. 从剪贴板中读取图片
      img = ImageGrab.grabclipboard()
    4. 结果复制到剪切板
      pyperclip.copy(content)

运行方法

修改WebITRTeach.py文件中的APPID Secret APIKey三个参数(自己去平台上申请),然后:

python main.py

运行效果