QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2769|回复: 0
打印 上一主题 下一主题

Python-百度ocr识别

[复制链接]
字体大小: 正常 放大
檀俾九        

7

主题

3

听众

10

积分

升级  5.26%

该用户从未签到

自我介绍
我本名为我,那就是我
跳转到指定楼层
1#
发表于 2021-1-12 09:38 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
' h4 x  W9 A* [# X2 I8 x. @
  1. #!/usr/bin/python
  2. 0 ~/ A( }& J$ [# z# -*- coding: utf-8 -*-
  3. / T$ h, y- ?( q+ \: v; i0 ?4 U3 |  d* i, W. P2 B/ ^
  4. import base64
  5. * U' x, T8 j$ M0 p* A6 j$ b& Gfrom os.path import exists
  6. 0 W, `! N2 i\" F( C+ g. z4 S$ Q# Ufrom tkinter import Tk
  7. % W: m; B2 b  g1 Y5 Bfrom tkinter.filedialog import askopenfilename9 {  @0 i1 ^* h4 S# i# f
  8. from urllib.parse import urlencode/ q/ D( r7 x* d) S& C0 s! i. L1 ~
  9. 0 O' n8 r  b. [* [! M) N
  10. import requests
  11. $ i7 D. V4 {  u% _
  12. 8 f0 h& E% F5 L! z8 Z\" k9 I- t6 F9 X! u* A$ r2 P( E
  13. def Dialog_box():$ g, x; D$ P! q. \' o; }+ D
  14.     root = Tk()
  15. $ l/ Y: H/ d, S; b: g: q; A0 ?% d    root.withdraw()
  16. 8 W; _$ }7 }  B1 A. v9 T5 r4 \2 p1 y0 o8 Y  o7 A
  17.     filetypes = [(5 M: R3 {9 k) o: A! W2 p6 |
  18.         '图片文件(*.jpg;*.jpeg;*.gif;*.png;*.bmp)', '*.jpg;*.jpeg;*.gif;*.png;*.bmp'),; i( m9 b0 @5 l
  19.         ('所有文件(*.*)', '*.*')]- o# W+ Z9 I* V2 e5 {/ y, d\" `

  20. 0 f' B! n+ A  n- h% [    file_path = askopenfilename(filetypes=filetypes)
  21.   B$ q+ }% R+ `* ^0 e4 W    return file_path7 g4 f2 o7 K5 R) D% A

  22. , ]; h: m\" ~& x4 o9 g5 ]% v. X% I6 R7 O+ }
  23. def Read_file(file_path):
  24. * s% `7 J2 |; h1 e1 Z7 S1 ^5 U9 G- i    with open(file_path, mode='rb') as file_object:
  25. 9 w8 N+ A5 \7 p1 C4 k' J9 I        contents = file_object.read()8 c4 D1 {  Y8 S: k
  26.         return contents.rstrip()
  27. - Q& O+ s2 {* j. D8 b5 ~
  28. / `& O/ c, K5 N2 X
  29. % K5 c2 M  o; L, r+ c  ddef Baidu_ocr(binary):8 p8 l$ _3 v- R) P! T8 y
  30.     url = "https://aip.baidubce.com/oauth/2.0/token?"
  31. \" E. r, m& Q! n+ v: c9 s: r    data = {' N( v, x! a3 u, J  G7 ]
  32.         "grant_type": "client_credentials",
  33. $ |: U! L  U5 D1 `        "client_id": "",  # 必填
  34. \" f' y5 H/ G1 E* S% [        "client_secret": ""  # 必填
  35. ( ^# f* H& A, F* {+ X  J; U1 l    }
  36. . ~/ _: ]! w0 B0 J\" L    url += urlencode(data)( p2 m9 W! N\" O; z1 [
  37.     response = requests.get(url=url).json(): y7 m* J' M$ t0 e) d$ K
  38.     access_token = response['access_token']7 _/ X& H) @( Z0 T6 M$ f

  39. 7 Y2 x, t3 @- Z: t4 k& L! w  S    url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token=" + access_token' v, b% Q' t5 B. x' s8 F4 Z6 b
  40.     post_data = {
  41. 8 J- O. g6 f1 t- i9 U) q0 k- F        "image": base64.b64encode(binary),, t! p/ D% o) p; [' U+ u
  42.         "url": "",
  43. 4 }* a/ O! {8 _, W+ l\" C8 h2 G: H        "language_type": "CHN_ENG",# @: H& N5 h, Q' V; w' t
  44.         "detect_direction": "false",
  45. 8 T; F: b4 }& M5 q7 w; s/ T        "detect_language": "false",8 w% k) h4 o7 }9 V
  46.         "probability": "false"8 [& K  o  t* d6 Y. e
  47.     }1 G% ~' @6 O% W4 `+ @, p4 J( v
  48.     response = requests.post(url=url, data=post_data).json()7 f# U( ~( S) a* E
  49.     num = response['words_result_num']9 N( V% k\" N- s\" S' S
  50.     result = ''# i+ J2 x$ j* P: Q
  51.     for i in range(num):
  52. - a& E0 d) A; ]0 v; r8 l% z        result += response['words_result'][ i]['words'] + "\r\n") E0 @# K$ M! w- {8 |3 K& X% k
  53.     return result( P0 W5 H$ b7 z3 s/ l
  54. & A- _9 K7 s7 b* {8 n

  55. 0 d. ?! s) g8 a( wif __name__ == "__main__":: b) {- n2 M8 J# i* g
  56.     file_path = Dialog_box(): v: _* x! u$ S: e3 f
  57.     if exists(file_path):
  58. 0 `; y. Z- N  S( c; |# G' x        data = Read_file(file_path)
  59. ) e% F* P; p* t% A$ C5 ]        print(Baidu_ocr(data))  n, P% p3 A2 ~. F

  60. ; M4 z: [9 N, o' `0 i
& y" ?4 s$ k# \+ f1 |+ C! B! X4 Z
$ `0 d$ W2 |* G/ K2 w9 S  a0 ~

# S9 T+ Z& I! Y, F4 }% k* D7 q4 k
转发自派生社区
Python交流群:1047602540

- d( x! u$ M6 O, w  @
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-4-18 07:07 , Processed in 0.495031 second(s), 50 queries .

回顶部