【问题标题】:Unable to get Youtube Channel Name in node.js using Cheerio无法使用 Cheerio 在 node.js 中获取 Youtube 频道名称
【发布时间】:2019-11-20 19:48:19
【问题描述】:

我对使用任何 API 既不感兴趣,也不对 request-promie 和 Cheerio 以外的任何其他库感兴趣。当我输入指向 yt 频道页面的链接时,我正在尝试获取 yt 频道的名称。文本位于唯一标签内,格式如下:<yt-formatted-string id="text" class="style-scope ytd-channel-name">NAME OF CHANNEL</yt-formatted-string> 我尝试了以下方法

$('yt-formatted-string', html).text()
$('.ytd-channel-name', html).text()
$('div > yt-formatted-string', html).text()

还有一些其他的组合,但似乎 Cheerio 库无法识别自定义制作的标签,例如“yt-formatted-string”以及它们的属性!关于如何克服这个问题的任何建议?

【问题讨论】:

    标签: node.js web-crawler cheerio


    【解决方案1】:

    你能试试下面的片段吗?它对我有用,

    const $ = cheerio.load(`<yt-formatted-string id="text" class="style-scope ytd-channel-name">NAME OF CHANNEL</yt-formatted-string>`);
    
    const a = $('yt-formatted-string').text(); //NAME OF CHANNEL
    

    【讨论】:

    • 这对我来说是一个空白。我正在使用最新版本的cheerio 和node.js
    • 您可以在这里附上您的示例代码吗?提取频道名称的片段。
    • 仅在加载该标签时可能对您有用,但我想从 youtube 网站获取。请不要拘泥于简化,它们可以作为指南,但不能解决这个问题。
    猜你喜欢
    • 2014-11-17
    • 2017-04-10
    • 2013-07-22
    • 2018-10-28
    • 1970-01-01
    • 2014-05-21
    • 2021-07-11
    • 2018-04-16
    • 1970-01-01
    相关资源
    最近更新 更多