这篇文章主要为大家详细介绍了Python之自动提取并收集信息的简单示例,具有一定的参考价值,可以用来参考一下。
感兴趣的小伙伴,下面一起跟随四海网的雯雯来看看吧!
1.导入需要的库,包括百度的api接口跟cv2图像截图图库
代码如下:
import cv2
from aip import AipOcr
# 读取图片,利用imshow显示图片
pic = cv2.imread(r'Y:\cut\img1.png')
pic = cv2.resize(pic,None,fx = 0.5, fy = 0.5)
cv2.imshow('img',pic)
cv2.waitKey(0)
教你用Python实现自动提取并收集信息的功能
2.截取图片,获取需要的信息,包括以下信息
代码如下:
# 删除不必要的部分
img = pic[210:500, 100:580]
# 截取各部分的文字
time = pic[400:430, 100:580]
business = pic[370:400, 100:580]
goods = pic[350:380, 100:580]
money = pic[210:300, 100:580]
num = pic[460:500, 100:580]
# 查看截取的部分是否合适
gener_name = ['time','business','goods','money','num']
excel_data = {}
pd_columns = ["a","b","c","d","e"] # 标题
教你用Python实现自动提取并收集信息的功能
3.定义函数将截取好的图片另存到文件夹
代码如下:
def shotcut_image(args):
for index in gener:
cv2.imwrite('image/{}.png'.format(args), img)
教你用Python实现自动提取并收集信息的功能
4.调用百度api接口,实现文字识别
代码如下:
# 导入api
AppID = '24177719'
API_Key = 'p8skmRYfHGoVGR4UU03Q5jiM'
Secret_Key = 'dyM0tzSILBZu9CFqZ7IkjWwECGaws4xo'
cilent = AipOcr(AppID,API_Key,Secret_Key)
def get_words(img_name):
with open('image/{}.png'.format(img_name), 'rb') as f:
result = cilent.basicAccurate(f.read())
return result
教你用Python实现自动提取并收集信息的功能
5.最后将信息转为Dataframe,利用pandas的to_exccel功能,将数据放到excel里面
代码如下:
def convert_to_dataframe(words):
# 构建dataframe
result = words['words_result']
for word in result:
excel_data.setdefault('a', []).append(word['words'])
# 将所有words读取后,取出语句存入excel
def convert_to_excel():
frame = DataFrame(excel_data, columns=pd_columns)
# todo 表头需要额外处理,这里指定不设置表头
frame.to_excel('out.xls',index=False, header=False)
到此这篇关于教你用Python实现自动提取并收集信息的功能的文章就介绍到这了,更多相关Python自动提取收集信息功能内容请搜索四海网以前的文章或继续浏览下面的相关文章希望大家以后多多支持四海网!
本文来自:http://www.q1010.com/181/18673-0.html
注:关于Python之自动提取并收集信息的简单示例的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。
关键词:python
四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。