Форум сайта python.su
Здравствуйте!
В тексте нахожу необходимую строку, но данные в некоторых случаях, например, Адрес переносятся на следующую строку. Как их возможно добавить?
в данном случае - Коншиных, 111,
“Адрес: Российская Федерация, Краснодарский кр., Усть-Лабинский район, ст-ца
 Ладожская, ул.
Коншиных, 111”
при этом универсальным параметром является слово Адрес:
adress = re.findall('Адрес(.+)', text)
Офлайн
PSASЗамени символ \n на пробел в строке до поиска адреса в этой строке.
Как их возможно добавить?
Отредактировано py.user.next (Ноя. 14, 2021 09:37:28)
Офлайн
PSASВыложите сюда файл,который будет на входе программы и опишите то что должно быть на выходе
В тексте нахожу необходимую строку, но данные в некоторых случаях, например, Адрес переносятся на следующую строку. Как их возможно добавить?
Офлайн
xam1816Здравствуйте!
[code python]import pdfplumber
import re
def extract_first():
pdf = pdfplumber.open("16.4.pdf")
page = pdf.pages[0]
text = page.extract_text()
pattern = re.compile('../..../.........')
result = pattern.findall(text)
#print (text)
name = re.findall('Наименование:(.+)', text)[0]
nazn = re.findall('Назначение:(.+)', text)[0]
ploshad = re.findall('Площадь, м²:(.+)', text)[0]
etash = re.findall('Количество этажей(.+)', text)[0]
adress = re.findall('Адрес(.+)', text)[0]
nomer = re.findall('Кадастровый номер:(.+)', text)[0]
input_str = (str (name) + "." " Назначение:" + str (nazn)+ "." + "Площадь:" + str (ploshad) +" кв.м." + " Количество этажей" + str (etash)+ "." + " Адрес"
+ str (adress)+ "." + " Кадастровый номер:" + str (nomer)+ "." )
for i, j in ("'",""),("
",""):
input_str = input_str.replace(i, j)
for q, w in (";",""),("кр.","край"):
input_str = input_str.replace(q, w)
input_str = input_str.capitalize()
print(input_str)
if(__name__ == "__main__"):
extract_first()
[/code]
Отредактировано PSAS (Ноя. 14, 2021 18:51:45)
Прикреплённый файлы:
16.4.pdf (85,6 KБ)
Офлайн