Форум сайта python.su
delvin-filда я тоже много чего подобного помню, из последнего у нас еще года 3 назад вся почта нацбанка(с нашей стороны етественно, а не нацбанка) на батниках работала(прием, отправка, сортировка, упаковка\раскрытие конверта, шифрование) но поддерживать это было то еще удовольствие, именно потому что “Там всего лишь иной подход. Много совершенно неочевидного”, и каждый раз открывая эти батники первой мыслью было: “какой идиот это все писал и как в этом разобраться?”, потом прочитав пару минут : “Пляя это же я писал лет пять назад”…
Да ладно! Ты серьезно?
Я прекрасно помню километровый батник
[code python][/code]
Офлайн
PEHDOM👍
“Пляя это же я писал лет пять назад”…
import __hello__
Офлайн
так с) попытался запилить скрипт и сделать по крону в винде с помощью Git Bash но почему то не выходит…
остановился пока что на питоне. Вот такой вопрос как все таки заставить эту строку из каждого отчета переносится в таблицу своеобразную.
Сварганил выгрузку main.py содержания отчета … он мне дает данные как их отправить в другой файл типо таблицы помимо копипаста не пойму…И как же заставить каждую новую строку из отчета вносится в следующую строку файла таблицы не теряя предыдущий вариант…
Офлайн
хай с ним пока не понял буду читать ткинтер..
пошел глубже до pyqt5 сделал форму открытия файла даже открывает чудеса….
но вот же не задача а как отсеить в тексте инфу не пойму…
посути сделать хотябы в этом окне печать выводимого на бумагу и вывод не всего содержимого а то что нужно… пытался задать промежуток
s = f.read(134)
print(1.0, s)
with f:
data = f.read()
self.textEdit.setText(data)
он конечно мне выводит на 134 символа…. а нужно то там с 20 по 40, с 80 по 130 (пример)
если есть мысли подскажите плиз буду признателен.
Ах забыл сказать делаю на питоне по причине того чтобы юзверь не мог файл менять сам…
Прикреплённый файлы: qf.py (1,3 KБ)
Офлайн
jedo73Ну выскажу свое мнение. У вас проблемка пока с общими понятиями связанными с программными делами. Читать tkinter и qt вам вредно.
хай с ним пока не понял буду читать ткинтер.
jedo73Что такое по вашему строка в файле? Вообще просто в файле строк нет, это последовательность байтов. Для текстовых файлов принято вставлять спецсимвол перевод стоки. Методы питона и текстовые редакторы показывают это дело как текст разделенный на строки. Если у вас html то там в принципе нет разделения на строки, точнее там есть </br> с примерно тем-же смыслом а сами переводы строк не используются. Вы пишете про строку из отчета, а там их в принципе нет…
как все таки заставить эту строку из каждого отчета переносится в таблицу своеобразную.
jedo73
Ах забыл сказать делаю на питоне по причине того чтобы юзверь не мог файл менять сам…
jedo73Не нужен вам qt и прочие премудрости. Вам надо с самыми азами разбираться.
если есть мысли подскажите плиз буду признателен.
Отредактировано doza_and (Ноя. 19, 2019 22:46:10)
Офлайн
doza_andУ него есть файлы вот такой структуры(он на первой странице показал)
покажите файл, чтобы проверить как он устроен. В ответ ничего.
<html><body> <font size='2pt'><font face='Verdana','Arial','Arial'><br><br> efector dualis - efector dualis :: Отчет проверки сохранен: 20191028_152626<br>—————————————————————————————<br><br> <img src= ‘./20191028_152626.bmp’ border='0'> </body></html>
doza_andХочет на выходе html вида:
пример что вы хотите получить.
<html><body> efector dualis - efector dualis :: Отчет проверки сохранен: 20191028_152626<br>—————————————————————————————<br> <img src= ‘./20191028_152626.bmp’ border='0'> efector dualis - efector dualis :: Отчет проверки сохранен: 20191101_152627<br>—————————————————————————————<br> <img src= ‘./20191101_152627.bmp’ border='0'> </body></html>
doza_andОн имеет ввиду, что исходные страницы должны сохраниться, только не умеет выразить.
Какой файл надо защитить?
import __hello__
Офлайн
jedo73
он конечно мне выводит на 134 символа
<html> <body> <font size='2pt'><font face='Verdana','Arial','Arial'><br><br> efector dualis - efector dualis :: Отчет проверки сохранен: 20191028_152626<br>—————————————————————————————<br><br> <img src= ‘./20191028_152626.bmp’ border='0'> </body></html>
import re f = open('report_1.html') datas = f.read() datas = datas.replace('<br><br>', '') datas = datas.replace('<br>', '\n') datas = datas.replace('<img src=', 'image file') datas = datas.replace('border=\'0\'>', '') datas = re.sub('<[^>]*>', '', datas) print (datas)
efector dualis - efector dualis :: Отчет проверки сохранен: 20191028_152626 ————————————————————————————— image file ‘./20191028_152626.bmp’
import __hello__
Отредактировано delvin-fil (Ноя. 20, 2019 00:40:51)
Офлайн
doza_and
“Считайте из одного файла данные, ну например в список питона. Так чтобы командой print оно нормально выводилось. Это будет уже треть нужной вам работы.”
Это уже давно сделал, если бы задача была в просмотре файла, как и писал ренее плюнул бы на все поставил appserver, заставил отчеты идти в www, создал бы юзера на пк порезал ему доступ к папкам и тд. Вуаля у нас в IE на 127.0.0.1 прекрасный список всех отчетов, даже просмотр!!!
“Есть некоторые форматы файлов в большей или меньшей степени напоминающие таблицы например CSV,TSV. А может вы имели ввиду экселовские таблицы? Таблицы аксесса? таблицы sqlite? Это все разные форматы. Работать с ними надо разными способами. Я вас просил, дайте пример что вы хотите получит”
Не имел в виду ексель, там уже как и писал ранее делал макрос который худо бедно что то делал.. но это не то ибо файл может править юзер…
SQL хотел изначально конечно запилить это все в БД, там запросами это все пинать… но это мне удобно а не юзеру
Конечно могу Вас не правильно понять, но уроки по питону смотрел читал и чего хуже все уроки писал в ручную, так что с некоторым функционалом знаком.
“Идем дальше, переносится в таблицу своеобразную. Но в питоне нет типа таблица”
from tabulate import tabulate ….как-то так
Отредактировано jedo73 (Ноя. 20, 2019 06:09:38)
Офлайн
Примерно сейчас у меня вот так
file_name = fd.askopenfilename()
# f = open(file_name) # закоментить
text.configure(state='normal')
text.insert(END, file_name)
text.configure(state='disabled')
f = open(file_name, encoding='utf_16_le') # вот это раскоментировать
s = f.read(134)
print(1.0, s)
s1 = f.read(15) # data/time
text1.configure(state='normal')
text1.insert(1.0, s1)
text1.configure(state='disabled')
s2 = f.read(100)
print(1.0, s2)
s3 = f.read(32) # img
text2.configure(state='normal')
text2.insert(1.0, s3)
text2.configure(state='disabled')
s4 = f.read(56)
print(1.0, s4)
s5 = f.read(20) # model
text3.configure(state='normal')
text3.insert(1.0, s5)
text3.configure(state='disabled')
s6 = f.read(78)
print(1.0, s6)
s7 = f.read(30) # object type
text4.configure(state='normal')
text4.insert(1.0, s7)
text4.configure(state='disabled')
Офлайн
delvin-fil:):):) Вы так четко все расписали что я подумал поначалу что это вы сами себе под двумя никами пишете. Потом понял что потерял хватку, не разглядел внутри текста пример исходника.
У него есть файлы вот такой структуры
jedo73
from tabulate import tabulate ….как-то так
jedo73такой подход очень уязвим к модификации источника данных (добавится пробел и все пропало). По спецификации html пробелы в служебных полях не влияют на внешний вид, источник данных может их насовать в любом месте. На мой взгляд его сложно поддерживать. Те через год вы не вспомните где что.
s1 = f.read(15) # data/time
Офлайн