|
2 / 2 / 1
Регистрация: 31.05.2014
Сообщений: 169
|
|
Распарсить файл06.05.2015, 06:55. Показов 5773. Ответов 34
Метки нет (Все метки)
Помогите разбить файл такого типа:
Абрамова,Валентина,Александровна,27/11/1949,50041088828891,Заключение брака,отдел ЗАГС АКИМОВ,СЕРГЕЙ,ВАСИЛЬЕВИЧ,30/11/1983,50041088828063,Заключение брака,отдел ЗАГС АКИМОВ,СЕРГЕЙ,ВАСИЛЬЕВИЧ,30/11/1983,50041088828063,Расторжение брака,отдел ЗАГС АЛЕШКОВА,ОЛЬГА,СЕРГЕЕВНА,22/12/1975,50041088829728,Заключение брака,отдел ЗАГС АЛЕШКОВА,ОЛЬГА,СЕРГЕЕВНА,22/12/1975,50041088829728,Заключение брака,отдел ЗАГС АЛЕШКОВА,ОЛЬГА,СЕРГЕЕВНА,22/12/1975,50041088829728,Расторжение брака,отдел ЗАГС Батышкина,Ольга,Владимировна,03/04/1987,50041088830114,Заключение брака,отдел ЗАГС Безрукова,Ольга,Николаевна,03/04/1983,50041088824428,Заключение брака,отдел ЗАГС Евенко,Алексей,Сергеевич,07/05/1985,50041088822689,Смерть,Специализиров анный отдел регистрации актов гражданского состояния о смерти По полям таблицы Фамили Имя Отчество Дата_рождения(причем дд.мм.гггг) ID Информация(все, что после ID)
0
|
|
| 06.05.2015, 06:55 | |
|
Ответы с готовыми решениями:
34
Нужно распарсить файл docx Содержимое каждой страницы распарсить с помощью BeautifulSoup и сохранить всё в файл Как распарсить json? |
|
2 / 2 / 1
Регистрация: 31.05.2014
Сообщений: 169
|
||
| 09.05.2015, 10:45 [ТС] | ||
|
0
|
||
|
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
|
|
| 09.05.2015, 11:43 | |
|
Safer54rus, чудак человек. Тебе сказали в чем ты не прав, а ты ерунду какую-то несёшь. Вот вообще 0x10 на 100% во всем прав и я с ним согласен.
Когда код на форум выкладываешь, нужно выложить вспомогательные модули, бд и т д или убрать из кода все лишнее и оставить только проблемный участок, чтобы было проще тебе-же помочь.
0
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||||||
| 09.05.2015, 13:50 | ||||||
|
Я начал было писать большой пост с разбором всех косяков кода, а потом махнул рукой: все равно потенциально можно упереться в базу, которой нет.
Поэтому только отмечу пару очевидных косяков. 1. Функция получения содержимого файлов — один сплошной баг. Во-первых, она обходит все файлы в каталоге, хотя этот же обход реализован в вызывающем коде. Приводит это к тому, что одни и те же записи потециально могли бы вставляться множество раз. Спасает от этого тот факт, что обработанные файлы переименовываюся, что не делает функцию более корректной. 2. В этой же функции поле text каждой записи содержит конкатенацию всех хвостов всех записей. Явно не то, чего хотелось. 3. Отрезание первых полей и склеивание последних реализовано огромным сложным куском кода. Примерный вид функции, с которым еще как-то можно работать привожу ниже. Детали реализации можно добавить по вкусу:
Автору: сначала локализуй где проблема: в питоньем коде или при вставке в базу. В определенный момент в коде есть участок, где доступен список sql-запросов для вставки. Техника отладки такая: 1. Подготовить базу. Пустую. 2. Подготовить входные файлы. Три файла, по две строчки в каждом. Достаточно маленькие значения, чтобы можно было читать глазами. 3. В коде вывести все запросы к базе. Убедиться, что они соответствуют ожидаемым, т.е. присутствуют все записи. 4. Посмотреть в базу: все ли записи были добавлены. На этом этапе можно понять где происходит ошибка и разбираться с ней: либо не все записи получаем, либо не все вставляем. Что-то более конкретное тут сказать сложно.
0
|
||||||
|
2 / 2 / 1
Регистрация: 31.05.2014
Сообщений: 169
|
||||||||||||
| 12.05.2015, 06:25 [ТС] | ||||||||||||
|
0x10, я знаю, что код баганый, но что вы ожидаете от новичка?
Объединил всё в одну процедуру, но при этом выдаёт:
0
|
||||||||||||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
| 12.05.2015, 07:34 | |
|
Первый аргумент - строка, а ты пытаешсья сделать с ним в строке формата вот это: {0[QueryKey]}
1
|
|
|
2 / 2 / 1
Регистрация: 31.05.2014
Сообщений: 169
|
|
| 12.05.2015, 08:10 [ТС] | |
|
0x10, а подскажите, функцию очистки, а то ret_dict_list.clear() не работает
0
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||
| 12.05.2015, 10:08 | ||
|
А вообще это признак того, чтобы переписать код и минимизировать состояния. Декомпозиция на функции тут поможет.
0
|
||
|
2 / 2 / 1
Регистрация: 31.05.2014
Сообщений: 169
|
|||
| 12.05.2015, 11:13 [ТС] | |||
|
Добавлено через 26 минут Выдаёт
0
|
|||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
| 12.05.2015, 11:36 | |
|
0
|
|
|
2 / 2 / 1
Регистрация: 31.05.2014
Сообщений: 169
|
|
| 12.05.2015, 11:44 [ТС] | |
|
0
|
|
|
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
|
|||||||
| 12.05.2015, 11:54 | |||||||
|
Тебя спрашивают: "Ты понимаешь, что делает эта строка?"
0
|
|||||||
|
2 / 2 / 1
Регистрация: 31.05.2014
Сообщений: 169
|
|
| 12.05.2015, 12:58 [ТС] | |
|
alex925, и в какую часть это вставлять? чем плохо "blanc_dict['1','10']=[]"? в справочнике именно так написано, без всего остального
Добавлено через 57 минут Последняя проблема, в blanc_dict['Text']=st вставляет всю информациюпосле поля ID со всех строк, как это исправить?
0
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||
| 12.05.2015, 13:10 | ||
|
Проблема опять та же самая - введено дополнительное состояние, из-за которого возникают ошибки.
0
|
||
|
2 / 2 / 1
Регистрация: 31.05.2014
Сообщений: 169
|
|
| 12.05.2015, 13:22 [ТС] | |
|
0
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||
| 12.05.2015, 13:25 | ||
|
Сейчас же это глобалки, которые сохраняют свое значение от обработки одной записи к другой. Отсюда и проблемы.
1
|
||
| 12.05.2015, 13:25 | |
|
Распарсить выхлоп objdump Как распарсить json?
Распарсить текстовый файл Распарсить файл с шифрованием Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|