Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中从字符串解析未匹配的XML_Xml_Python 2.7_Amazon Web Services_Xml Parsing_Amazon Route53 - Fatal编程技术网

如何在Python中从字符串解析未匹配的XML

如何在Python中从字符串解析未匹配的XML,xml,python-2.7,amazon-web-services,xml-parsing,amazon-route53,Xml,Python 2.7,Amazon Web Services,Xml Parsing,Amazon Route53,我想获取AWS上区域中的所有记录。get_records()的结果不完全是XML格式。我想从字符串(域名和IP地址)解析XML。我做错什么了吗?谁能帮我一下吗 示例:XML字符串 查看lxml库,特别是etree.fromstring()函数。@VergeA:还有其他选择吗?我用的是Python2.x。在尝试安装lxml时获得如此多的依赖项(所有这些依赖项都不适用于我的Python版本)。看起来它只对Python3有效。“只对Python3有效”是绝对不正确的。您使用的是2的哪个版本?如果您有2

我想获取AWS上区域中的所有记录。
get_records()
的结果不完全是XML格式。我想从字符串(域名和IP地址)解析XML。我做错什么了吗?谁能帮我一下吗

示例:XML字符串


查看
lxml
库,特别是
etree.fromstring()
函数。@VergeA:还有其他选择吗?我用的是Python2.x。在尝试安装
lxml
时获得如此多的依赖项(所有这些依赖项都不适用于我的Python版本)。看起来它只对Python3有效。“只对Python3有效”是绝对不正确的。您使用的是2的哪个版本?如果您有2.7,您可以在这里找到一个具有依赖项的预编译版本:此外,您上面的错误实际上似乎是由于您传递给ET的
i
函数类型为
Record
。您应该先将其转换为字符串/从记录中提取任何文本内容。@VergeA:谢谢您的建议。我整理好了。请查看
lxml
库,特别是
etree.fromstring()
函数。@VergeA:还有其他选择吗?我用的是Python2.x。在尝试安装
lxml
时获得如此多的依赖项(所有这些依赖项都不适用于我的Python版本)。看起来它只对Python3有效。“只对Python3有效”是绝对不正确的。您使用的是2的哪个版本?如果您有2.7,您可以在这里找到一个具有依赖项的预编译版本:此外,您上面的错误实际上似乎是由于您传递给ET的
i
函数类型为
Record
。您应该先将其转换为字符串/从记录中提取任何文本内容。@VergeA:谢谢您的建议。我把它整理好了。
import boto.route53.connection
import xml.etree.ElementTree as ET

conn = boto.route53.connection.Route53Connection(aws_access_key_id = 'xxxx',aws_secret_access_key = 'xxxx')
zone = conn.get_zone('<example>.com')
records = zone.get_records()
for i in records:
    root = ET.fromstring(i)
    print(root)
    self._parser.Parse(data, 0)
TypeError: Parse() argument 1 must be string or read-only buffer, not Record