【问题标题】:Direct link to YouTube comments直接链接到 YouTube 评论
【发布时间】: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

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

【问题讨论】:

    标签: html youtube youtube-api youtube-data-api


    【解决方案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 线程的顶部?
    猜你喜欢
    • 2012-04-05
    • 1970-01-01
    • 2018-03-29
    • 2016-05-31
    • 2014-12-23
    • 1970-01-01
    • 1970-01-01
    • 2014-07-27
    • 1970-01-01
    相关资源
    最近更新 更多