跳转到主要内容

用于将各种视频分享网站的URL转换为嵌入代码的注册表和适配器。

项目描述

概述

用于将各种视频分享网站的URL转换为嵌入代码的注册表和适配器。

此包提供了一些函数和zope3组件,用于将常见流媒体视频网站的URL转换为嵌入代码。目的是允许提供用户输入URL的内容类型显示基于该URL的嵌入视频。这是为了避免允许用户输入原始HTML嵌入代码,这可能是危险的并且很麻烦。它还允许动态调整生成的嵌入代码以适应您的页面布局。

组件

本产品的核心是一组命名适配器。这些适配器将字符串(URL)和整数(宽度)转换为Unicode嵌入代码。目前,已提供以下视频分享网站的适配器:

添加更多适配器只需创建一个检查URL是否适合您想要网站的函数,以及另一个将其转换为嵌入代码的函数。您将后者函数注册为命名适配器,例如

<adapter
    for="str int"
    name="youtube"
    provides=".interfaces.IEmbedCode"
    factory=".converters.youtube_generator"
    />

并将URL检查函数注册为同名的实用工具

<utility
    provides=".interfaces.IURLChecker"
    component=".converters.youtube_check"
    name="youtube" />

您可以选择提供一个整数“索引”作为检查器的属性,以确定检查的相对顺序(更具体的检查应放在前面)。

获取嵌入代码

根据您的使用情况,有几种生成嵌入代码的方法。最简单的是对URL进行单次适配

from p4a.videoembed.interfaces import IEmbedCode embed_code = IEmbedCode(url)

这会得到预设宽度的嵌入(425px),要获取自定义宽度,您可以多次适配

from zope.component import getMultiAdapter embed_code = getMultiAdapter((url, width), IEmbedCode)

还有一个方便的视图,可用于从受限代码中调用,它可选地接受URL和宽度并返回一个嵌入代码。如果省略了URL,则将尝试通过适配到ILinkProvider(表示存在getLink方法)从上下文中获取一个。

<div class="EmbedCode"
     tal:define="embed_view nocall:context/@@video-embed.htm;
                 default_embed embed_view;
                 custom_width python:embed_view(width=500);
                 custom_url python:embed_view(url='http://www.youtube.com/watch?v=1111', width=250)"
     tal:replace="structure default_embed" />

这显示了您如何使用tal中的视图从实现或适配ILinkProvider的对象生成URL,或使用任何对象中的显式URL。

在这些所有方法中,适配器检查全局实用工具,该实用工具已注册到命名适配器,并找到适合给定URL的适配器。

希望这对您有帮助。

作者:Alec Mitchell <apm13@columbia.edu> 赞助商:The Daily Reel http://www.thedailyreel.com

videoembed的变更日志

videoembed - 1.2 (2009-05-17)

  • 修复从zope.component导入的ComponentLookupError [toutpt]

  • 删除pyflakes报告的未使用导入 [tom_gross]

  • 添加部分Dailymotion支持 [toutpt]

videoembed - 1.1 (2008-04-09)

  • 添加Brightcove支持 [Nate Aune]

videoembed - 1.1b1 (2008-02-14)

  • 添加部分ustream.tv支持 [Rocky Burt] r1672

  • 添加从YouTube和Blip.tv提取URL到FLV文件的代码(Ross Patterson)r1875和r1879

videoembed - 1.0alpha1 (2007-04-29)

  • 首次公开发布。 [Rocky Burt]

videoembed - 0.1 (未发布)

  • 初始包结构。 [zopeskel]

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪一个,请了解有关安装包的更多信息。

源代码分布

p4a.videoembed-1.3.zip (44.0 kB 查看哈希值)

上传时间: 源代码

支持

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面