如何在GitHub的README.rst文件中嵌入YouTube视频?
在GitHub的README.rst中嵌入YouTube视频的方法
为什么你的HTML嵌入方式不生效
GitHub对reStructuredText(rst)里的raw:: html块有严格限制,不允许嵌入iframe标签——这是出于安全和页面加载性能的考量,所以你写的iframe代码会被GitHub直接过滤,自然没法显示视频。
替代方案:带跳转链接的封面图
既然没法直接嵌入视频,和Markdown格式的README一样,你可以用「点击跳转的视频封面图」来替代,步骤很简单:
1. 生成视频封面图链接
YouTube视频的封面图可以通过视频ID生成,通用格式是:https://img.youtube.com/vi/[你的视频ID]/maxresdefault.jpg
把[你的视频ID]换成你视频专属的那串字符就行。如果这个高清封面加载失败,还能换这些备选格式:
https://img.youtube.com/vi/[你的视频ID]/hqdefault.jpg(高清备选)https://img.youtube.com/vi/[你的视频ID]/mqdefault.jpg(中等质量)https://img.youtube.com/vi/[你的视频ID]/default.jpg(默认质量)
2. 在README.rst中添加带跳转的图片
用rst的图片和链接语法,把封面图和视频播放页绑定,代码示例:
.. image:: https://img.youtube.com/vi/[你的视频ID]/maxresdefault.jpg :target: https://www.youtube.com/watch?v=[你的视频ID] :alt: 你的视频标题(替换成实际标题)
用户点击这张图片,就会直接跳转到YouTube的视频播放页面,体验和嵌入视频差不多。
补充提醒
- GitHub只允许rst里用少量安全的HTML标签(比如
<b>、<i>),像iframe、script这类有风险的标签都会被过滤,别再尝试用其他HTML方式嵌入视频了。 - 如果是本地渲染rst文档(比如用Sphinx工具),可能支持iframe嵌入,但GitHub上肯定不行。
内容的提问来源于stack exchange,提问作者Albert
相关产品推荐
相关产品推荐

