파이썬에서 lxml 메서드를 사용하여 구문 분석하려는 일부 XML이 있습니다. 요소를 구문 분석 한 결과 일부 구조화 된 오브젝트 (델타 찾기)를 비교할 수 있기를 원합니다.일부 '고르지 않은'XML에서 데이터베이스 레코드를 구성하는 가장 좋은 방법
구문 분석해야하는 XML 파일이 약 50 개 있으며 XML 데이터가 '고르지 않은'형식으로되어 있습니다 (올바른 이름이 무엇인지 잘 모르겠습니다).
간단한 예 XML :
나는 적절한 DB 내가 ID를 통해 각 개체를 분리하고, 매개 변수의 각 요소를 비교하는 데 사용할 수 있습니다 (MySQL은?) 구조를 만드는 방법에 대해 갈 것이라고 어떻게<ID 1>
<parameter A>
<parameter B>
</ID 1>
<ID 2>
<parameter A>
<parameter B>
<parameter C>
</ID 2>
<ID 3>
<parameter A>
</ID 3>
.
이것이 의미가 있는지 확실하지 않습니다. 정확한 용어를 사용하는 것은별로 좋지 않습니다.
실제 소스 XML
은 여기에 나열된 모든 파일 : http://www.nationalarchives.gov.uk/aboutapps/pronom/droid-signature-files.htm이 파일은 몇 년 과거를 통해 업데이트 된 동일한 구조의 버전입니다. DB의 모든 XML 요소 (버전 번호, 릴리스 날짜, 두 개의 기본 섹션에있는 개별 ID 및 바이트 패턴으로 시작) 만 필요하지는 않습니다.
mysql으로 밀어 넣는 것이 최선의 방법은 아닐지 모르지만, 그렇게했다면 python/html 프론트 엔드를 사용하여 검색/비교 도구를 만들 것입니다.
'안티 패턴'은 필자가 읽을만한 새로운 개념입니다. 고맙습니다. 내가 볼 때의 어려움은 부분 집합을 상대적으로 고정 된 구조 (매우 할 수있는)로 가져갈 수 있다고하더라도 버전 당 테이블을 가질 수 있으며 매개 변수 섹션은 5 또는 그래서 매개 변수들, 그리고 오직 하나만. 나는 버전 당 객체 당 하나의 테이블을 가지고 수천 개의 테이블을 갖는 것이 터무니없는 것일까? –
선택한 환경/언어/알고리즘에 대한 와우 - 전형적인 안티 패턴이 가장 교육적인 독서를위한 것입니다. 위키 - 피디아 – Elemental
으로 시작하십시오. Heh, 초보자가 체크인합니다! ... :) –