直接链接到 YouTube 评论

Posted

技术标签:

【中文标题】直接链接到 YouTube 评论【英文标题】:Direct link to YouTube comments 【发布时间】:2018-02-08 14:30:39 【问题描述】:

有没有办法直接链接到 YouTube 页面的 cmets 部分?

我知道using anchors and div ids 可以做到这一点,但是当我将它应用到 YouTube 网址时却没有成功,因为 YouTube 在页面加载时会去除正斜杠。

例如,https://www.youtube.com/watch?v=eRsGyueVLvQ/#comments 变为 ?v=eRsGyueVLvQ#comments

这可能吗,还是应该归结为功能请求?

【问题讨论】:

【参考方案1】:

您可以通过单击某条评论的发布时间(例如2 years ago)将某条评论显示在评论部分的顶部。

这会将您带到同一个 YouTube 视频,但 URL 看起来像这样:https://www.youtube.com/watch?v=VIDEO_ID&lc=COMMENT_ID(就像在 Mr.Rebot 的回答中一样)。

您也可以对回复执行此操作。

【讨论】:

天啊,我不敢相信它这么简单。我一生都在点击通知菜单中的人民 cmets 并思考“哦,YouTube 算法实际上找到了最好的 cmets 并将其带到顶部并突出显示它”。我从来没有意识到这仅仅是因为它是我从通知菜单中点击的评论链接。 这个很有用,谢谢。我正在寻找一些东西,尽管当他们点击链接(即锚链接)时将 cmets 放在页面顶部,例如:external-site.com/#anchor【参考方案2】:

如果你会使用CommentThreads:list:

返回与 API 请求参数匹配的评论线程列表。

代码片段:

// Sample php code for commentThreads.list

function commentThreadsListByVideoId($service, $part, $params) 
    $params = array_filter($params);
    $response = $service->commentThreads->listCommentThreads(
        $part,
        $params
    );

    print_r($response);


commentThreadsListByVideoId($service,
    'snippet,replies',
    array('videoId' => 'kmXXXLBL3Nk'));

然后您可以使用 URL 创建链接:

https://www.youtube.com/watch?v=VIDEO_ID&lc=COMMENT_ID

此链接不是在 API 中生成的,因此您应该为此创建一个函数。

【讨论】:

因为我想直接链接到 youtube 页面中 cmets 开始的部分,所以我总是想链接到第一个评论。那只是https://www.youtube.com/watch?v=VIDEO_ID&lc=1 吗? 有一个为特定评论生成的commentID,您可以将其用于您的链接。您可以按照上面提供的链接获取 commentID。 谢谢。但是,如果添加了更多最近的 cmets,该链接是否会离评论部分的开头越来越远?如果我没有很好地解释,我希望这是一个外部链接,将观众带到实际的 youtube 页面。具体来说,到 cmets 部分的顶部。 我明白了。所以你上面贴的代码会生成最近评论的commentID?这样一来,它始终是 cmets 线程的顶部?

以上是关于直接链接到 YouTube 评论的主要内容,如果未能解决你的问题,请参考以下文章

如何获得特定的 YouTube 评论?

ReferenceError:未定义 YouTube/将 YouTube 评论插入电子表格

如何抓取 YouTube 视频评论?

指定收件人 Youtube api v3 插入评论

使用带有 python 的 youtube api 发布 youtube 评论,每次询问“授权此应用程序”

Youtube视频评论检索