【发布时间】:2021-07-27 00:22:30
【问题描述】:
我正在尝试在单个 youtube 视频页面上获取 URL。 youtube-dl 可以做到这一点,但我只需要 url,所以我想学习如何做到这一点。
获取页面源代码是我的代码:source = requests.get("https://www.youtube.com/watch?v=zXif_9RVadI")
我正在寻找 21. 这一行代码:source_line_21 = source.text.split("\n")[20]
所有以https://r[0-9] 开头并包括googlevideo.com/videoplayback 并以"," 结尾的网址
我尝试了很多代码,但总是得到 0 或 1 个匹配项。但是有 15-20 场比赛。
re.match(r'https:\/\/.*googlevideo.com/videoplayback.*mimeType', source_line_21)
我不擅长正则表达式,我学不好。谢谢大家。
print(source_line_21)[:32600] 的输出我在这里搜索。太长了,贴到那里:print(source_line_21)[:32600]
【问题讨论】:
-
请附上minimal reproducible example。提取包含链接的原始 HTML 的 sn-p。将其硬编码为变量。然后使用该变量而不是
source.text并创建一个示例,人们可以将其复制到他们的环境中并运行以重现您的问题。 -
re.match()只查找字符串开头的模式。使用re.search() -
@PranavHosangadi source.text 太长,我不想在这里粘贴。如果人们想在他们的环境中尝试,我认为使用我的代码是更好更快的尝试方式。我尝试了
re.search(),但同样如此,0 匹配。感谢您的评论。 -
"source.text is too long" 我知道,这就是为什么我要求提供与此处相关的 sn-p。
-
我以为你想要类似regex101.com/r/I4qd8t/2
标签: python python-3.x regex re