嵌套的 xml golang 中的解组属性

我一直在到处搜索,无法找到解决方案。


我正在尝试从维基百科获取嵌套 xml 标记的属性,但到目前为止无法获取嵌套属性。pageid我特别想从标签中获取page。


这是 xml 的示例:


<api batchcomplete="">

  <query>

    <pages>

      <page _idx="25039021" pageid="25039021" ns="0" title="Go (programming language)">

        <extract xml:space="preserve">

          stuff about golang

        </extract>

      </page>

    </pages>

  </query>

</api>

这是我正在使用的结构:


type Page struct {

    PageID string `xml:"pageid,attr"`

}


type Extract struct {

    Text string `xml:"query>pages>page>extract"`

    Page Page   `xml:"query>pages>page"`

}

但 extract.page.pageid 仍然一无所获。我有什么遗漏/做错了吗?


偶然的你
浏览 142回答 1
1回答

胡说叔叔

您的结构应该更改为:type Page struct {&nbsp; &nbsp; PageID string `xml:"pageid,attr"`&nbsp; &nbsp; Text&nbsp; &nbsp;string `xml:"extract"`}type Extract struct {&nbsp; &nbsp; Page Page `xml:"query>pages>page"`}fmt.Println(extract.Page.PageID)fmt.Println(extract.Page.Text)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go