在Django / Python中允许嵌入视频的方法有哪些?

时间:2012-07-04 04:40:14

标签: django youtube embed

我想允许使用Django显示嵌入式YouTube视频(以及其他常见的嵌入式媒体)。在Django中有没有允许这种情况发生?

上下文是我正在尝试显示rss项目,这些项目在给定项目中可能有也可能没有一个或多个嵌入式视频。使用“安全”过滤器丢弃它们,并编写一个返回mark_safe(html)的自定义过滤器,其中“html”是传递的项目,也会丢弃它们。无论如何都要过去吗?

您是否必须从视图中的rss项中提取嵌入对象,然后将它们重新嵌入模板中?

虽然我是Django的新手,但我已经对这个主题进行了大量的搜索,但还没有找到有用的答案。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

我找到了这个问题的答案......我正在使用feedparser,它正在删除某些内容。我最后添加了一个猴子补丁(我相信这是正确的术语),以允许更多的材料通过:

feedparser._HTMLSanitizer.acceptable_elements.add("object")
feedparser._HTMLSanitizer.acceptable_elements.add("embed")
feedparser._HTMLSanitizer.acceptable_elements.add("iframe")

答案 1 :(得分:1)

使用django-embed-video。它为您提供所需的所有功能。

答案 2 :(得分:0)

  1. 从RSS
  2. 解析youtuble链接
  3. 将它们传递给模板
  4. 使用此http://djangosnippets.org/snippets/212/模板标记将链接转换为嵌入代码