2017-08-29 101 views
-2

我正在寫一個與tesseract-ocr一起工作的腳本,我從屏幕獲取文本,然後我需要將它與字符串進行比較。問題是,即使我確定字符串是相同的,比較失敗,我怎麼能使我的代碼工作?字符串比較在Python中不起作用

這裏我的代碼:

import pyscreenshot as pss 
import time 
from pytesser import image_to_string 

buy=str("VENDI") 
buyNow=str("VENDI ADESSO") 
if __name__ == '__main__': 
    while 1: 
     c=0 

     time.sleep(2) 
     image=pss.grab(bbox=(1104,422,(1104+206),(422+30))) 
     text = str(image_to_string(im)) 
     print text 
     if text==buy or text==buyNow: 
      print 'ok' 

例如輸入: Input image sample

而且作爲輸出我得到:

VENDI ADESSO

這是相同的字符串,我需要比較,但在執行過程中,我在控制檯上沒有問題

+0

請分享一些輸入... – BeerBaron

+0

你介意給出一個示例輸出嗎? – Eduard

+0

嘗試打印'repr(文本)'並查看是否有任何意外。 – khelwood

回答

0

事實證明,您的字符串最後有新行(\n\n)。

您可以使用

text = text.strip() 

從您的字符串中刪除周圍的任何空白。