Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 6, 2015 07:11:14

widg
Зарегистрирован: 2013-05-06
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь по XML

xml в котором всё слито

Прикреплённый файлы:
attachment LM810225T81_150935forum2.XML (1,2 KБ)

Офлайн

#2 Дек. 6, 2015 07:12:17

widg
Зарегистрирован: 2013-05-06
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь по XML

фаил с известными дублями
f7a1b5d3-b91a-11e1-8a88-00155d11dc00
5e354034-b919-11e1-8a88-00155d11dc00

Прикреплённый файлы:
attachment l.txt (76 байт)

Офлайн

#3 Дек. 6, 2015 07:19:47

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Помощь по XML

widg
xml в котором всё слито
Должно быть два неслитый файла - это входящие файлы.
И один выходящий - это файл, который получается по этим двум.

Один входящий файл ты прикрепил, дальше какую фигню прикрепляешь, она не нужна эта фигня. Потому что ты неправильно делаешь и пытаешься эту свою неправильную фигню пропихнуть тут, чтобы тебе её доделывали.

widg
фаил с известными дублями
Этот файл не нужен. Его даже делать не надо.



Отредактировано py.user.next (Дек. 6, 2015 07:23:22)

Офлайн

#4 Дек. 6, 2015 08:28:40

widg
Зарегистрирован: 2013-05-06
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь по XML

Из-за срочности дела, я уже всё в ручную перелопатил, но в будущем этот скрипт нужен будет.
Я оцениваю свои силы, знаю что я не смогу написать как надо, в мои силы только поправить скрипт под свои нужды, обычно гуглю, нахожу похожее, правлю и что то получается, но ничего накопать в этот раз не смог. если бы я где-то ещё смог попросить помощи, я готов недорого заплатить. Знаю что тут помогут!

Реальные файлы скинуть не могу т.к. это персональные данные.

Как правильно в XML по убирать дубли?

Офлайн

#5 Дек. 6, 2015 09:47:33

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Помощь по XML

Короче, я тебе составлю эти два файла (из первого файла), только потом не говори, что скрипт неправильно работает.

widg
Реальные файлы скинуть не могу т.к. это персональные данные.
Так реальные и не надо. Надо два примерных и точный результат, который должен из них получиться. Тогда можно скрипт написать и проверить, правильно ли он работает. А так придётся догадки строить. Опыт показывает, что когда задание полностью не известно, то и программы, которые пишутся по такому заданию, тоже неправильно работают (делают не то, что нужно). В итоге время и силы тратятся, а программы как не было, так и нет.

widg
Как правильно в XML по убирать дубли?
Это тоже элементарно делается.
Там это не надо делать (сливать файлы), потому что некоторые элементы будут потеряны.
Удаление элементов, которые есть в другом файле, и удаление дубликатов элементов в одном файле - это разные задачи.

Я так понял, что у тебя есть два файла, и нужно в первом удалить только то, что есть и во втором (сравнивая один атрибут), а с дубликатами вообще не заморачиваться нигде.



Офлайн

#6 Дек. 6, 2015 10:14:48

widg
Зарегистрирован: 2013-05-06
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь по XML

Да правильно нужно в первом удалить только то, что есть и во втором сравнивая один атрибут

Офлайн

#7 Дек. 6, 2015 11:05:07

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Помощь по XML

Вот файлы и скрипт.



Прикреплённый файлы:
attachment xmlcmp.tar (10,0 KБ)

Офлайн

#8 Дек. 6, 2015 14:06:41

widg
Зарегистрирован: 2013-05-06
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь по XML

не то, нужно удалить из файла родителя зная его атрибут
проверить в массиве, сравнить, если он есть то удалить

Офлайн

#9 Дек. 6, 2015 14:19:36

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Помощь по XML

Так а чем не устраивает получившийся файл?



Офлайн

#10 Дек. 6, 2015 14:35:21

widg
Зарегистрирован: 2013-05-06
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь по XML

вот что мне помогло

from xml.dom import minidom
b = [line.rstrip('\n') for line in open('list.txt')]
doc = minidom.parse("HM810225T81_1511244.XML")
for element in doc.getElementsByTagName('PERS'):
    if element.getAttribute('ID_PAC') in b:
        element.parentNode.removeChild(element)
f = open('HM810225T81_1511244+.XML', "w")
f.write(doc.toxml())
f.close()

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version