从xml页面中提取数据

从xml页面中提取数据,xml,Xml,嗨,我想从这个页面上得到一些信息,我需要“实际数量” 我正在使用谷歌文档excel文档。正在尝试使用importxml导入它 到目前为止,我得到的是: =ImportXML(?“//totalmaterials[@id='34']//实际数量”) 只是为了确保你知道我在这里要做的是在单元格中打印出实际数量的数字 我试着用谷歌搜索,但没有用 我想这对那些知道自己在做什么的人来说很简单 谢谢你的帮助 ben您的XPath需要包含您要查找的目标元素的完整路径。我把它放进谷歌文档,得到了一份数据列表:

嗨,我想从这个页面上得到一些信息,我需要“实际数量”

我正在使用谷歌文档excel文档。正在尝试使用importxml导入它

到目前为止,我得到的是:

=ImportXML(?“//totalmaterials[@id='34']//实际数量”)

只是为了确保你知道我在这里要做的是在单元格中打印出实际数量的数字

我试着用谷歌搜索,但没有用

我想这对那些知道自己在做什么的人来说很简单

谢谢你的帮助


ben

您的XPath需要包含您要查找的目标元素的完整路径。我把它放进谷歌文档,得到了一份数据列表:

=importXml("http://www.fuzzwork.co.uk/blueprints/xml/598/35/5"; "//blueprint/basematerials/material/@actualquantity")
如果您正在查找问题中演示的特定元素,请按原样操作,并在id筛选器中插入插槽:

=importXml("http://www.fuzzwork.co.uk/blueprints/xml/598/35/5"; "//blueprint/basematerials/material[@id='34']/@actualquantity")

我不熟悉其中的Excel部分,但我将您的数据放入本地文件,添加了DTD,并使用了以下查询:

    doc("actual_quantity-with-dtd.xml")//totalmaterials/material/(data(@id), ",",data(@actualquantity),",")
它提供了以下输出,您可以将其作为csv文件导入Excel

    <?xml version="1.0" encoding="UTF-8"?>34 , 16043 , 35 , 13537 , 36 , 2507 , 37 , 100 , 39 , 2 , 38 , 2 , 40 , 1 ,
3416043,3513537,362507,37100,39,2,38,2,40,1,

是的,谢谢,太好了。看来我有很多东西要学。下一个问题是我如何才能使用=transpose函数来显示id=34 id=35等。如果使用importXml函数来获取列“a”中的id,然后使用另一个importXml函数获取列“B”中的值,然后,您可以在电子表格的其他地方导航,并输入一个公式,如=transpose(A1:B5)。