2017-04-01 63 views
0

我在互聯網上做了我的研究,似乎LOAD XML INFILE無法保存具有相同名稱的嵌套孩子,或者只是名稱不同。LOAD XML INFILE保存嵌套的孩子爲普通

imported XML sample here

但沒有任何選項,該選項可以用來保持父明文全部內容?這對我來說不是問題,然後逐行解析該內容。

請不要告訴我我需要用PHP解析它,它在速度上失敗,而且我需要加載很多XML,所以終端對我來說是最好的解決方案。

因此,如果有例如某種外殼或python腳本(如果它不可能導入它爲簡單)。

在此先感謝

回答

0

謝謝大家糾正語法錯誤,它是非常有用的,你應該贏得另一枚獎章用於幫助社區。

由於沒人想出瞭解決方案,我沒有跟隨,這讓我:

1)創建與此內容的文件script.py

#!/usr/bin/python3 
# coding: utf-8 

import os 
import sys 
import fileinput 


replacements = {'<Image>':'', '</Image>':';',' ':'','\n':''} 

with open('/var/www/html/XX/data/xml/products.xml') as infile, open('/var/www/html/XXX/data/xml/products_clean.xml', 'w') as outfile: 
    for line in infile: 
     for src, target in replacements.iteritems(): 
      line = line.replace(src, target) 
     outfile.write(line) 

2)通過終端

python /var/www/html/script.py 
運行

3)那麼你像往常一樣加載XML到XML的XML到你的mysql,或者你可以將該列轉換成json以便更好地使用