2017-03-16 316 views
0

Goos晚上每个人。 我有一个脚本,我从提示符运行。 这是一个OCR脚本,需要大约20秒来执行答案。如何在我的python函数中添加进度条?

我想补充一个进度条向用户显示的处理正在进行中...

我不知道该怎么做。 到目前为止,我发现的所有进度条都基于时间完成,而不是任务/治疗完成。

这里是我的代码:

from PIL import Image 

import pytesseract 
import re 
import time 


def extract_quantity_and_cip13_from_image(filename): 
    ocr = pytesseract.image_to_string(Image.open(filename)) 
    filtre = re.compile(r'G ([0-9]+).*([0-9]{13})') 
    resultat = filtre.findall(ocr) 
    return resultat 


if __name__ == '__main__': 
    print 'Activation du script pour OCR de facture OCP' 
    print 'Entrez la localisation du fichier source' 
    fichiersource = raw_input() 
    print 'Lancement OCR et Filtrage pour affichage des quantités et codes CIP13' 
    resultat = extract_quantity_and_cip13_from_image(fichiersource) 
    print 'Voici les quantités et codes CIP13 identifiés dans le fichier source :' 
    print resultat 

任何帮助的欢迎!

+1

怎么会哟你测量进度? –

+0

那么活动的指标将被罚款,只是为了显示用户脚本是不是死了...... – JnebJneb

+0

'打印“脚本运行...”' –

回答

0

尝试progressbar可能每个公司 更新方法被调用时返回不同的值:

下面是一个例子:

import progressbar 
import time 
bar = progressbar.ProgressBar(maxval=20, widgets=[progressbar.Bar('=', '[', ']'), ' ', progressbar.Percentage()]) 
bar.start() 
for i in range(10): 
    bar.update(i+1) 
    time.sleep(1) 
bar.finish() 

输出:

(venv) ➜ python test.py 
[=======================         ] 40% 
0

您还可以使用使用Tkinter progressbar

+1

这种感觉更像是一个比一个完整的答案评论。至少提供一些工作代码和解释代码在做什么。链接倾销的答案似乎是相当低的努力,几乎没有一个完整的答案。 – MooingRawr