如何在 python 中获取随机 youtube 视频,不和谐

Posted

技术标签:

【中文标题】如何在 python 中获取随机 youtube 视频,不和谐【英文标题】:How to get random youtube video in python, discord 【发布时间】:2021-12-10 03:08:51 【问题描述】:
    channel = bot.get_channel(901718257864691743)
    query_string = urllib.parse.urlencode('search_query': message.content)
    htm_content = urllib.request.urlopen(
            'http://www.youtube.com/results?' + query_string)
    search_results = re.findall(r'/watch\?v=(.11)',
                                    htm_content.read().decode())
    await channel.send('http://www.youtube.com/watch?v=' + search_results[0])

如何使这个随机?现在它输出最好的结果,我想对此有一点随机性

【问题讨论】:

请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。 上面的代码在 youtube 上搜索 message.content,并返回 1 个视频,这很棒.. 但如果内容相同,它总是相同的视频。我想让视频返回更随机一点,所以我可以显示前 3、2、5、4 的结果,而不是总是显示最高的结果。 【参考方案1】:

根据this,您需要确保在 re.findall() 函数中包含“+”,否则它只会返回输出的第一个结果。

所以你可以尝试像这样在你的函数中添加'+' search_results = re.findall(r'/watch\?v=(.11)+', htm_content.read().decode())

【讨论】:

您也可以尝试更改search_results[0],因为您只检查字符串数组的第一个值。 search_results[1] 将是第二个值,search_results[2] 将是第三个值,依此类推... @Eternal Eternus 有帮助吗?

以上是关于如何在 python 中获取随机 youtube 视频,不和谐的主要内容,如果未能解决你的问题,请参考以下文章

通过单击 Android Studio 中的按钮在 webview 中获取随机 Youtube 视频

在搜索Youtube api后,如何获取Youtube视频[关闭]

如何使用 python 获取 Youtube 视频的时长?

如何从列表中获取随机字符串值 - android [关闭]

使用 Python 获取 Youtube 数据

python:获取频道的所有 youtube 视频网址