1.关于google.com的Alexa API响应:http://pastebin.com/C5yjSjCf 换句话说,它代表了12个简单表中的一行,称为" ContactInfo" "按国家排名",...
还有一个例子(facebook.com) http://pastebin.com/mP813jYS
2.方案/数据类型信息:http://awis.amazonaws.com/AWSAlexa/AWSAlexa.xsd
我可以用xqilla
做基本的xqueryquery.txt:
声明命名空间aws =" http://alexa.com" ;;
/ AWS:UrlInfoResponse / AWS:响应/ AWS:UrlInfoResult / AWS:Alexa的/ AWS:contentData内容/ AWS:DataUrl
xqilla -i alexa.xml query.txt
Error parsing resource: file:///var/www/google Error message: invalid content after root element's end tag [err:FODC0002]
xqilla -i google.xml query.txt
Error parsing resource: file:///var/www/Error message: invalid content after root element's end tag [err:FODC0002]
alexa.xml(我想要实际查询的文件),是彼此之后的许多api响应
我也尝试删除google.xml中的前3行和最后一行 并搜索和替换aws:'和领先的空间,jsut使它更简单 但仍然是相同的错误:(
答案 0 :(得分:1)
你说......
alexa.xml(我想查询的文件实际上是),这些api很多 彼此之后的回应
这听起来像什么?你的文件看起来像这样吗?
<aws:UrlInfoResponse xmlns:aws="http://alexa.com">
<!--...-->
</aws:UrlInfoResponse>
<aws:UrlInfoResponse xmlns:aws="http://alexa.com">
<!--...-->
</aws:UrlInfoResponse>
这也可以解释你的错误。您只允许拥有一个根元素。你需要将它全部包装在另一个元素中。
示例:
<responses>
<aws:UrlInfoResponse xmlns:aws="http://alexa.com">
<!--...-->
</aws:UrlInfoResponse>
<aws:UrlInfoResponse xmlns:aws="http://alexa.com">
<!--...-->
</aws:UrlInfoResponse>
</responses>
XPath:
/responses/aws:UrlInfoResponse/aws:Response/aws:UrlInfoResult/aws:Alexa/aws:ContentData/aws:DataUrl