Записать текст изображения в новый текстовый файл?

Я использую tesseract для OCR. У меня убунту 18.04.

У меня есть эта программа, которая извлекает тексты из изображения и распечатывает их. Я хочу, чтобы эта программа создала новый текстовый файл и вставила извлеченный контент в новый текстовый файл, но я могу сделать только это

  • скопировать содержимое в буфер обмена
  • открыть новый файл текстового редактора (geditor) Я не знаю, как вставить скопированный контент

Вот моя программа, которая извлекает текст из изображения

from pytesseract import image_to_string 
from PIL import Image
print image_to_string(Image.open('sample.jpg'))

Вот программа, которая копирует текст в буфер обмена,

import os
def addToClipBoard(text):
    command = 'echo ' + text.strip() + '| clip'
    os.system(command)

Эта программа откроет geditor и создаст новый текстовый файл.

import subprocess
proc = subprocess.Popen(['gedit', 'file.txt'])

Любая помощь будет оценена по достоинству.

Почему бы не открыть новый файл (в вашей программе) и не записать в него извлеченный текст?

DYZ 01.06.2019 08:29

Вам нужно использовать буфер обмена или вы просто хотите текст в текстовом файле?

Mohit Motwani 01.06.2019 08:29

@MohitMotwani Я просто хочу текст

Gaurav Bahadur 01.06.2019 08:29
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
3
2 730
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Если вам просто нужен текст, то откройте текстовый файл и напишите в него:

from pytesseract import image_to_string 
from PIL import Image
text =  image_to_string(Image.open('sample.jpg'))

with open('file.txt', mode = 'w') as f:
    f.write(text)

Он продолжает перезаписывать файл, есть ли способ создать новый «file.txt» с другим именем, скажем, «file1.txt», и когда я снова запускаю его, «file2.txt»

Gaurav Bahadur 01.06.2019 10:14

Вы можете написать цикл for и добавить числа?

Mohit Motwani 01.06.2019 10:21

Так же, как я предложил в комментарии, создайте новый файл и запишите в него извлеченный текст:

with open('file.txt', 'w') as outfile:
    outfile.write(image_to_string(Image.open('sample.jpg')))

Другие вопросы по теме