Python自动更新期刊价格

每年要跟邮局订购一批期刊,由于大部分期刊的价格每年都会有小幅度的上涨,每年在比对价格的时候弄的头昏眼花,既然咱入了Python的坑,那何不让Python来帮忙做这些事呢。开始尝试吧!

大致思路:

(1)通过文字识别录入最新的期刊名和价格,保存在csv文件中。

(2)通过比对往年的期刊名,匹配成功的,更新最新的期刊价格,匹配失败的,输出具体期刊名,提示“未找到该期刊”。

下面开始具体操作:

(1)文字识别录入数据

首先,我用手机把纸质报刊订阅清单一张张拍照,然后拷到电脑里。在这里,拍照有个技巧,可以用一张白纸盖住,然后把需要识别信息的地方挖个洞,这样就可以事先过滤掉大部分的无用信息,为后面写代码提供了遍历。如图:

image

图片拷到电脑后,给图片重新命名为'1.jpg'、‘2.jpg’...,这样做也是为了方便后面写代码。如果图片很多可以用图片重命名软件批量重命名。

重命名好图片后就要考虑开始文字识别了,我采用的是百度的文字识别API,网址:http://ai.baidu.com/tech/ocr。为什么用它?因为简单易用,识别准确。

建一个文件getOcrData.py,将识别的数据保存在csv文件中。具体代码如下:

from aip import AipOcr
import re,csv
import openpyxl

APP_ID = '14830***'
API_KEY = 'zZwpvc6H5z9qGic8g5AK****'
SECRET_KEY = 'FsWu8msV8U8zIpEHXACuZWC5GT1*****'

client = AipOcr(APP_ID, API_KEY, SECRET_KEY)    #连接baidu文字识别API
f = open('qikan.csv','wt',newline='',encoding='UTF-8')
writer = csv.writer(f)

pic_urls = ['pic/{}.jpg'.format(str(i)) for i in range(1,31)]    #构造待识别图片url列表

title = []
price = []

for pic_url in pic_urls:
    item = open(pic_url, 'rb')   #以二进制读取图片
    img = item.read()

    message = client.basicGeneral(img)

    for i in message.get('words_result'):
        word = i.get('words')
        
        if word[-1].isdigit(): #判断是否是价格,这里偷懒判断最后1位是否为数字来判定
            price.append(word)
        else:
            title.append(word)

    data = dict(zip(title,price))   #将识别的数据以题名为键,以价格为值保存在字典中
print('共识别{}条数据\n'.format(len(data)))

for title, price in data.items():
    writer.writerow((title,price))

f.close()    

保存文件,运行,得到如下图结果:

image

(2)首次尝试更新期刊价格

有了期刊的价格后,下面就要更新期刊价格了,为什么说是首次尝试呢?因为百度文字识别虽说准确率较高,但也达不到100%,总归有点小问题,第一次尝试更新期刊价格的目的就是要找到哪些地方还存在问题,然后去手动修改一下。新建updatePrice.py,更新期刊价格的代码如下:

import re,csv
import openpyxl

wb = openpyxl.load_workbook('test.xlsx')    #加载excel工作簿
sheet = wb.active   #激活主工作表

data = {}
csv_file = csv.reader(open('qikan.csv', 'r'))
for li in csv_file:
    data[li[0]] = li[1]     #读取csv,并将数据转为字典格式
    
for row_num in range(117, sheet.max_row):    #遍历excel
    name = sheet.cell(row=row_num, column=4).value
    try:
        if name in data:
            sheet.cell(row=row_num,column=7).value = data[name] #更新数据
            print('已更新         ' + name)
        else:
            print('未找到 '+ name)
    except TypeError:
        pass

wb.save('test.xlsx')

代码很简单,写好后保存,运行,发现有不少未找到的期刊,手工打开excel文件和csv文件,找出未找到的期刊名,如果是识别有问题,则手动改回正确的,全部改好后,保存文件,再次运行一遍updatePrice.py,搞定!

image
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,492评论 6 513
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,048评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,927评论 0 358
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,293评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,309评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,024评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,638评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,546评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,073评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,188评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,321评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,998评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,678评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,186评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,303评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,663评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,330评论 2 358

推荐阅读更多精彩内容

  • 点我查看本文集的说明及目录。 本项目相关内容包括: 实现过程: CH7 创建在线商店 CH8 管理支付和订单 CH...
    学以致用123阅读 3,611评论 0 6
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,116评论 4 61
  • 今天是母亲节,我一直在等待,在渴望,你像往日一样刷牙洗脸,没有我想象的那样,跑过来主动跟我说祝妈妈节日快乐。我也像...
    育女心经阅读 301评论 0 0
  • 我是一只有思想的风筝 飞过天空,划过彩云 那是一直想做的事 我是一只有追求的风筝 挣脱束缚,离开平庸 那是我毕生的...
    夏目岳七阅读 289评论 2 10
  • 2018.02.16 编号28 日精进624天 今日感悟: 1得人恩果千年记,和自己相识的人都是自己的恩人! 2亲...
    宇宙之爱黄昊贵阅读 153评论 0 0