前提・実現したいこと
Pythonの初心者で、本を購入し、Webの情報をみながら現在学習中の身です。
Webの情報をみつつ、フォルダscreenshotに保存した複数の画像ファイルをOCRを利用し、その結果を一つずつのファイル(.txt,.word)または、一つのファイルにまとめて別のocred screenshot出力しようと試みているのですが、うまくいきません。
発生している問題・エラーメッセージ
エラーメッセージ
例外が発生しました: AttributeError
'str' object has no attribute 'save'
File "C:\Users\admin\Documents\Python\ocr_eng_test.py", line 24, in <module>
text.save(os.path.join(new_dir_name, file))
該当のソースコード
import os from PIL import Image import pyocr #インストールしたTesseract-OCRのパスを環境変数「PATH」へ追記する。 #OS自体に設定してあれば以下の2行は不要 path='C:\Program Files\Tesseract-OCR' os.environ['PATH'] = os.environ['PATH'] + path #pyocrへ利用するOCRエンジンをTesseractに指定する。 pyocr.tesseract.TESSERACT_CMD = r'C:\Program Files\Tesseract-OCR\tesseract.exe' tools = pyocr.get_available_tools() tool = tools[0] dir_name = "screenshot" new_dir_name = "ocred screenshot" files = os.listdir(dir_name) for file in files: img = Image.open(os.path.join(dir_name, file)) builder = pyocr.builders.TextBuilder(tesseract_layout=6) text = tool.image_to_string(img, lang="eng", builder=builder) text.save(os.path.join(new_dir_name, file))
試したこと
text.save(os.path.join(new_dir_name, file))の部分を
print(text)
に変更し、全ての画像ファイルに対して翻訳がされることは確認しています。
エラー結果から、構文、文法がおかしいのは理解しているのですが、アドバイスいただけると助かります。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
Windows10 , python3.9.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/05 12:27
2021/01/05 12:33
2021/01/05 12:48