如何解决为什么在将命令行图像文件中的参数作为参数传递时会出错
import argparse
from PIL import Image
from PyTesseract import *
def image_to_text(image):
PyTesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
result = PyTesseract.image_to_string(image,lang='eng')
return result
if __name__ == "__main__":
ap = argparse.ArgumentParser()
ap.add_argument("-i","--input",type = open,required = True,help='path to input image')
args = vars(ap.parse_args())
img = Image.open(ap)
print(image_to_text(img))
使用命令行参数将参数作为图像作为输入执行此代码后,出现以下错误。请帮助我为什么会发生这些错误。
回溯(最近一次调用最后一次):
文件“C:\Users\Chaitanya\AppData\Local\Programs\Python\python37\lib\site-packages\PIL\Image.py”,第 2972 行,打开中
fp.seek(0)
AttributeError: 'ArgumentParser' 对象没有属性 'seek'
在处理上述异常的过程中,又发生了一个异常: 回溯(最近一次调用):
文件“C:\Users\Chaitanya\Desktop\image\code.py”,第 18 行,
img = Image.open(ap)
文件“C:\Users\Chaitanya\AppData\Local\Programs\Python\python37\lib\site-packages\PIL\Image.py”,第 2974 行,打开中
fp = io.BytesIO(fp.read())
AttributeError: 'ArgumentParser' 对象没有属性 'read'
解决方法
terraform --version
是参数解析器。它不是文件名,因此您不能将其作为文件名传递。您应该删除 app > res > drawable > mipmap
,因为您真的不希望 arg 解析器打开它,然后将 Image 行更改为
ic_launcher.xml
您想要解析的结果,而不是解析器本身。也就是说,ic_launcher_round.xml
将包含在 x_ic_launcher.xml
参数中指定的文件名。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。