我正在尝试使用Google表格importxml捕获qmd文件(即xml标记)的元素。基于How to use importXML function with a file from Google Drive?,我认为我已经正确导入了文件,但是似乎无法捕获任何标签。
这就是我正在尝试的-
=importXML("https://drive.google.com/uc?id=1AI2C8hQnSOuuoyJXizYBszGmpMXW8xxT&export=download","\\identifier")
这是qmd / xml文件的样子
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
<qgis version="3.9.0-Master">
<identifier>Z:/My Drive/Mangoesmapping/Spatial Projects/2019/DSC/132_Ongoing_Asset_Updates/Working/Sewerage_Updates/Sewerage_Manholes_InspectionShafts.TAB</identifier>
<parentidentifier>Sewerage Manhole Infrastructure</parentidentifier>
<language>AUS</language>
<type>dataset</type>
<title>Sewerage Manholes within Douglas Shire Council</title>
<abstract>Sewerage Manholes within Douglas Shire Council. Most data has been updated based on field work, review of existing AsCon files and discussion with council staff responsible for the assets in 2018/2019. In Port Douglas most of the infrastructure has been surveyed in. </abstract>
<keywords vocabulary="gmd:topicCategory">
<keyword>Infrastructure</keyword>
<keyword>Sewerage</keyword>
如果我使用
=importXML("https://drive.google.com/uc?id=1AI2C8hQnSOuuoyJXizYBszGmpMXW8xxT&export=download","*")
但是我真的很想通过将每个标签的importxml放在我需要的单元格中来获取想要的元素。
答案 0 :(得分:1)
###
检索<identifier>###</identifier>
中的https://drive.google.com/uc?id=1AI2C8hQnSOuuoyJXizYBszGmpMXW8xxT&export=download
我可以像上面那样理解。如果我的理解是正确的,那么这个答案怎么样?
在您的问题中,=importXML("https://drive.google.com/uc?id=1AI2C8hQnSOuuoyJXizYBszGmpMXW8xxT&export=download","\\identifier")
的公式使用\\identifier
作为xpath。您想从数据中检索值,似乎您正在尝试检索###
中的<identifier>###</identifier>
。
在这种情况下,为了使用Selects nodes in the document from the current node that match the selection no matter where they are
,必须使用//
代替\\
。可以在here的文档中看到。
因此=importXML("https://drive.google.com/uc?id=1AI2C8hQnSOuuoyJXizYBszGmpMXW8xxT&export=download","\\identifier")
可以进行如下修改。
=importXML("https://drive.google.com/uc?id=1AI2C8hQnSOuuoyJXizYBszGmpMXW8xxT&export=download","//identifier")
与其他xpath一样,从问题数据中,您也可以使用/qgis/identifier
的xpath代替//identifier
。因此,您也可以使用以下公式。
=importXML("https://drive.google.com/uc?id=1AI2C8hQnSOuuoyJXizYBszGmpMXW8xxT&export=download","/qgis/identifier")