如何捕获YouTube嵌入代码并转换为URL

时间:2012-11-26 17:02:40

标签: python regex youtube

我需要将YouTube嵌入代码仅删除到其网址。

这与StackOverflow上的所有问题完全相反。大多数人都希望将URL转换为嵌入代码。这个问题解决了我想要的用法模式,但是与特定的嵌入代码的正则表达式相关联(Strip YouTube Embed Code Down to URL Only

我不熟悉YouTube多年来如何提供嵌入 - 或者尺寸差异如何。根据他们当前的网站,有2种可能的嵌入模板和各种选项。如果就是这样,我可以自己处理一个正则表达式 - 但是我希望有人能够分享更多的知识,所以我可以编写一个适当的正则表达式模式来匹配它们而不会陷入无穷无尽的边缘情况。

完整的用例场景:

  • 用户在基于网络的wysiwig编辑器中输入内容
  • 后端清理youtube&其他嵌入代码;重新格式化已批准嵌入内部格式,因为文本全部转换为降价。
  • 在显示屏上,生成适用于youtube或其他第三方网站的当前模板/代码

在之前的公司,我们的技术团队设计了一个计划,通过列出网址来嵌入YouTube视频。这很有效,但是在CMS中,每个人都接受过培训。我正在尝试创建类似的存储,但是对于用户生成的内容。

1 个答案:

答案 0 :(得分:0)

您可以考虑将BBCode用于用户生成的内容(此处为python module)。

vBulletin论坛软件允许YouTube通过[youtube]标签嵌入。您的用户只需输入视频代码而不是完整的URL,然后在服务器端创建嵌入代码。

如果他们输入视频的完整网址,那么您只需呈现指向该视频的链接即可。

From this example:

发现了一些视频 http://youtube.com/watch?v={video_id}

在文字编辑器中: [youtube]{video_id}[/youtube]

输出此HTML: <object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/{video_id}"></param><embed src="http://www.youtube.com/v/{video_id}" type="application/x-shockwave-flash" width="425" height="350"></embed></object>