QQ登录

只需要一步,快速开始

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

Python-百度ocr识别

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

7

主题

3

听众

10

积分

升级  5.26%

该用户从未签到

自我介绍
我本名为我,那就是我
跳转到指定楼层
1#
发表于 2021-1-12 09:38 |只看该作者 |倒序浏览
|招呼Ta 关注Ta

- e9 a; K4 J. z" q6 F
  1. #!/usr/bin/python
  2. ) Q4 i$ k/ ^. q! V0 k& U4 J# -*- coding: utf-8 -*-. E4 L1 [% j4 |- k, O, w! s
  3. : E- f\" Z+ ^: z\" D! R
  4. import base64$ B( k+ y! p9 g- g3 p3 d& W
  5. from os.path import exists
  6. & t1 W. q6 [# i, Y+ n1 c1 \( Y: zfrom tkinter import Tk- G6 Y* E! G: }6 ?% G- O9 U  L# m
  7. from tkinter.filedialog import askopenfilename% l. i6 X4 C; d+ d7 q
  8. from urllib.parse import urlencode1 s8 O# |9 }2 m8 w

  9. 4 c! F( L: c( v, ~; O6 Y5 pimport requests( n8 O9 E5 [& }  }
  10. / w, z+ G! O, w, j
  11. * ^\" o$ W+ Z$ t8 {
  12. def Dialog_box():
  13. 5 e$ b4 Y& ]1 \6 I4 |% Z; L) E    root = Tk()* v- }- f, ~7 J, u4 ]' z6 W
  14.     root.withdraw()% v& p- A' h2 u4 y1 n+ R  y

  15. ) W* J: _5 y/ |    filetypes = [(
  16. 7 o\" |; l: l9 M, f% j9 H/ f( }        '图片文件(*.jpg;*.jpeg;*.gif;*.png;*.bmp)', '*.jpg;*.jpeg;*.gif;*.png;*.bmp'),9 ^! w5 i, f* Q# X- t6 q; P
  17.         ('所有文件(*.*)', '*.*')]
  18. # V7 {* P9 V; Z8 N- y# _* ?2 Y% K' I- Q: y/ u4 G3 @$ K
  19.     file_path = askopenfilename(filetypes=filetypes)/ e$ t1 T/ ^4 U& K: b) K. i
  20.     return file_path& u/ S( `4 H3 i( b( T8 r
  21. & r, J4 [9 D8 E; i) }4 L
  22. 9 i: y/ m/ @0 @\" R
  23. def Read_file(file_path):
  24. ! r+ b  f: e4 [/ n1 [% E    with open(file_path, mode='rb') as file_object:\" B- e; T0 o) z\" ]) F
  25.         contents = file_object.read()
  26. $ @3 b, J! U$ @, m9 R* O8 G        return contents.rstrip()# i( M0 Y# A3 F

  27. ) q0 T3 t% U' a/ {& u0 E5 K5 {/ Q
  28. def Baidu_ocr(binary):
  29. 6 T5 {\" {; A, n; A    url = "https://aip.baidubce.com/oauth/2.0/token?"/ L! n2 q  y, p
  30.     data = {
  31. : N1 D) P5 P! Y: b' h. c3 t        "grant_type": "client_credentials",
  32. \" N1 f9 R/ |$ u9 e\" i0 T0 W        "client_id": "",  # 必填
  33. 0 L2 h  _6 u$ z9 `/ c        "client_secret": ""  # 必填
  34. 9 [* k, ?+ }' B' s    }
  35. 9 P7 |+ l- [( k0 t    url += urlencode(data)
  36. ; f. q  g3 G. P+ O; h6 u4 P    response = requests.get(url=url).json()  ~( A/ [+ H( }
  37.     access_token = response['access_token']3 a% u. x, Q, ]1 l) k% i% O

  38. / A# D\" {9 p\" w) v/ w    url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token=" + access_token
  39. 5 A$ q4 Z. P, \+ b. ~+ g+ m    post_data = {
  40. ) ]9 s' ~7 Y6 N8 g: E/ s        "image": base64.b64encode(binary),, Z\" G+ E7 A9 w  |# y3 }
  41.         "url": "",
  42. , l2 E; J4 e/ E0 Q9 Q$ }; b( ^        "language_type": "CHN_ENG",6 N/ k+ e) n  N
  43.         "detect_direction": "false",/ N$ ~9 Y$ j4 Q4 z- b
  44.         "detect_language": "false",
  45. & h7 f4 T6 v- j8 T0 `! b2 Z        "probability": "false"
  46. ! m$ t# j% ]% S    }; n8 h5 O' b- j
  47.     response = requests.post(url=url, data=post_data).json()2 Y- c: \* `8 g, A
  48.     num = response['words_result_num']
  49. * X9 l+ E. |+ p    result = ''/ }- ?+ V6 E( X: I! w
  50.     for i in range(num):
  51. 6 Y+ ~3 q8 |9 U$ q$ t        result += response['words_result'][ i]['words'] + "\r\n"3 N* |5 @# |1 _- p! B5 ~* w
  52.     return result. ]2 A, T8 t\" E) C4 H
  53. + R) P3 B/ ?  N$ b  d/ D- X

  54. ! e( T# u6 n! j* ?2 }' Hif __name__ == "__main__":- U  M5 }: H4 A\" H3 }$ O; q6 X7 b
  55.     file_path = Dialog_box()2 M- n7 z3 [! ?% J6 {$ b# U' |
  56.     if exists(file_path):: m6 \: u' [' l  ?* w
  57.         data = Read_file(file_path)
  58. 4 ~4 @2 @1 ^- E$ G# n; J; T        print(Baidu_ocr(data))
  59. & X( a: \7 L2 S! [: c$ d
  60. ! z' l8 ?9 L) t2 Y

$ P: f* s+ C, x7 o( u% i" v8 x' r
4 H* A: T0 P' ~5 ?3 C( z9 @
/ Q. e5 G; j" g
转发自派生社区
Python交流群:1047602540
( {7 E3 }1 ^  e5 ]+ \
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-9-2 08:12 , Processed in 0.423091 second(s), 50 queries .

回顶部