按名称解析 google 应用程序脚本问题 eBay api 中的 XML 元素 txt

Parse XML in google apps script issue eBay api element txt by name

好的,所以我正在尝试使用 google 应用程序脚本从 eBay api 获取 eBay 商品标题。 这是 url.

的示例 XML 输出
<GetSingleItemResponse xmlns="urn:ebay:apis:eBLBaseComponents">
<Timestamp>2017-03-08T20:00:54.557Z</Timestamp>
<Ack>Success</Ack>
<Build>E981_CORE_APILW_4424327_R1</Build>
<Version>981</Version>
<Item>
  <Description>Description</Description>
  <ItemID>132119159999</ItemID>
  <EndTime>2017-04-07T00:11:36.000Z</EndTime>
  <ViewItemURLForNaturalSearch></ViewItemURLForNaturalSearch>
  <ListingType>FixedPriceItem</ListingType>
  <Location>Brooklyn, New York</Location>
  <GalleryURL>GalleryURL</GalleryURL>
  <PictureURL>PictureURL</PictureURL>
  <PrimaryCategoryID>181023</PrimaryCategoryID>
  <PrimaryCategoryName>Home &amp; Garden:Yard, Garden &amp; Outdoor Living:Gardening Supplies:Composting &amp; Yard Waste:Garden Compost Bins</PrimaryCategoryName>
  <BidCount>0</BidCount>
  <ConvertedCurrentPrice currencyID="USD">249.99</ConvertedCurrentPrice>
  <ListingStatus>Active</ListingStatus>
  <TimeLeft>P29DT4H10M42S</TimeLeft>
  <Title>Title</Title>
  <Country>US</Country>
  <AutoPay>false</AutoPay>
  <ConditionID>1000</ConditionID>
  <ConditionDisplayName>New</ConditionDisplayName>
</Item>
</GetSingleItemResponse>

这是代码。

function myFunction() {
  var item='http://open.api.ebay.com/shopping?callname=GetSingleItem&responseencoding=XML&appid=XXXXXXXXXXXX&siteid=0&version=967&ItemID=132119159999&IncludeSelector=Description';
  var xml = UrlFetchApp.fetch(item).getContentText();
  var root=XmlService.parse(xml).getRootElement();
  var Title=root.getChild('Item').getChild('Title').getText();
  Logger.log(Title); 
}

在 运行 代码之后,我收到错误提示值为 null

"TypeError: Cannot call method "getChild" 为空。"

调用时需要传入namespace getChild():

var ebay = XmlService.getNamespace('urn:ebay:apis:eBLBaseComponents');
var Title=root.getChild('Item',ebay).getChild('Title',ebay).getText();

名称空间由根元素的 xmlns 属性显示。

此处记录了 getChild()(和其他函数)的不同形式:

https://developers.google.com/apps-script/reference/xml-service/element