Python 官方文档:入门教程 => 点击学习
本篇文章给大家分享的是有关使用python怎么实现自动提取并收集信息,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。代码实现导入需要的库,包括百度的api接口跟cv2图像截图图库
本篇文章给大家分享的是有关使用python怎么实现自动提取并收集信息,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
导入需要的库,包括百度的api接口跟cv2图像截图图库
import cv2from 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)
截取图片,获取需要的信息,包括以下信息
时间Time
商家business
商品Goods
价格money
单号num
# 删除不必要的部分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"] # 标题
定义函数将截取好的图片另存到文件夹
def shotcut_image(args): for index in gener: cv2.imwrite('image/{}.png'.fORMat(args), img)
调用百度api接口,实现文字识别
# 导入apiAppID = '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
最后将信息转为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读取后,取出语句存入exceldef convert_to_excel(): frame = DataFrame(excel_data, columns=pd_columns) # todo 表头需要额外处理,这里指定不设置表头 frame.to_excel('out.xls',index=False, header=False)
Python主要应用于:1、web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用开发;5、游戏开发;6、桌面应用开发。
以上就是使用Python怎么实现自动提取并收集信息,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网Python频道。
--结束END--
本文标题: 使用Python怎么实现自动提取并收集信息
本文链接: https://www.lsjlt.com/news/277161.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0