【问题标题】:A little bit lost with goQuery selectiongoQuery 选择有点迷失
【发布时间】:2020-05-31 23:05:44
【问题描述】:

我是 Go 新手,我正在尝试通过制作一个转发机器人来学习它。无论如何,我遇到了一个我不知道如何解决的问题。

我有以下结构:

type Post struct {
    Title string
    Url   string
}

我正在尝试使用 goQuery 获取这些值,如下所示:

var title = doc.Find(".title.title.may-blank").Each(func(i int, s *goquery.Selection) {
        fmt.Println("Title:", s.Text())
})

但是当我尝试将值设置为 Post 结构时,我得到了这个错误:

cannot use title (type *goQuery.Selection) as type string in field value. 

好的,这是有道理的,但我怎样才能把它转换成字符串呢?我试过 s.Text() 但它不起作用。我想过制作一个返回字符串的函数,但我不确定这是否可行。

如果有人可以帮助我,我将不胜感激,在此先感谢!

【问题讨论】:

  • s.Html() 呢?
  • 打印时它可以工作,但我的 Post 结构上的错误仍然存​​在。

标签: go goquery


【解决方案1】:

问题在于 .Each 返回原始的 *goquery.Selection 以便您可以链接调用。如果需要获取字符串值,直接赋值即可,如下:

var title string
doc.Find(".title.title.may-blank").Each(func(i int, s *goquery.Selection) {
    title = s.Text()
})

【讨论】:

  • 感谢您的回答,我会尽快尝试。
猜你喜欢
  • 2015-07-13
  • 2013-06-04
  • 1970-01-01
  • 1970-01-01
  • 2022-11-02
  • 1970-01-01
  • 1970-01-01
  • 2016-03-12
  • 2013-10-14
相关资源
最近更新 更多