![](/img/trans.png)
[英]Parse an xml file to extract element values using lxml and XPath in python
[英]lxml parse XML in python between 2 database using xpath function how to ?
所以,这是我的游戏计划.....
python中的xpath
这是我的XML
因此,此xml存储在数据库(ca)中,我需要提取此“数据”以获取所有这些值层并将其存储到另一个数据库(a)中:
到目前为止,这是我的想法。
import pyodbc
from lxml import etree
from StringIO import StringIO
con_ca = pyodbc.connect(..)
con_a = pyodbc.connect(..)
cur_ca = con_ca.cursor()
cur_c = con_c.cursor()
cur_ca.execute("""
select id_original,data
from table
""")
rows_ca = cur_ca.fetchall()
for row in rows_ca:
id_original = id_original
x = str(row.data)
root = etree.fromstring(x)
BValid = etree.XPath('/Data/Response/Detail/B/Valid')
BPass = etree.XPath('/Data/Response/Detail/B/Pass')
BDetails = etree.XPath('/Data/Response/Detail/B/Details')
BCode = etree.XPath('/Data/Response/Detail/B/Code')
BDecisionS = etree.XPath('/Data/Response/Detail/B/Decision/Result')
BDecisionB = etree.XPath('/Data/Response/Detail/B/Decision/Bucket')
con_a.execute("""
INSERT INTO table2 (id_original,BValid,BPass,BDetails,BCode,BDecisionS BDecisionB)
VALUES(?, ?, ?,?, ?, ?, ?)
""")
..一切正常,除了在fetchall()之后我能够得到('// text'):但是如何使用Xpath进入特定节点以从此示例中获取值或文本?
(b_valid_text,) = root.xpath('/Data/Response/Detail/B/Valid/text()')
谢谢安德烈! 以防万一有人需要这个答案。 这有效!!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.