• 本坛建议反馈
  • 更新:根据b/n站网抑云u2b等100+网站的链接文本自动生成嵌入iframe通过s9e\TextFormatter\Plugins\MediaEmbed

直接在发帖时填入受支持的网站的资源权威url即可在显示时替换为对应的嵌入iframe,原url会被追加显示在iframe之后

以下为一些网站的权威url示例:
url中的www.均为可选不写的,如果写了www.也可以不写https?://也能生成链接和iframe n0099

b站

https://www.bilibili.com/video/av数字
https://www.bilibili.com/video/BV10个字母数字
https://www.bilibili.com/video/av数字?p=数字
https://www.bilibili.com/video/BV10个字母数字?p=数字

由于 https://b23.wtf,对于目前b站客户端分享后生成的https://b23.tv/短链接,通过 https://s9etextformatter.readthedocs.io/Plugins/MediaEmbed/Add_custom/#how-to-scrape-content 提供的服务端解析重定向以去除其重定向带来的tracing querystring,并显示为https://b23.tv/av/bvid形式 n0099

https://b23.tv/短链接
https://b23.tv/av数字
https://b23.tv/BV10个字母数字
https://b23.tv/av数字/p数字
https://b23.tv/BV10个字母数字/p数字

也支持b站以前的acg.tv短域

https://acg.tv/av数字
https://acg.tv/av数字?p=数字
https://acg.tv/sm数字 (n站视频)

acg.tv用户页不会嵌入只会按原样显示链接:https://acg.tv/m2

点击展开iframe示例

网抑云

https://music.163.com/#/playlist?id=数字
https://music.163.com/#/album?id=数字
https://music.163.com/#/song?id=数字
https://music.163.com/#/radio?id=数字
https://music.163.com/#/program?id=数字
点击展开iframe示例

n站

https://www.nicovideo.jp/watch/sm数字
https://www.nicovideo.jp/watch/so数字 (番剧)
点击展开iframe示例

以上网站为我对s9e\TextFormatter\Plugins\MediaEmbed进行的扩展

除此之外其本身还支持100多个网站(除优酷外均为国外网站),完整列表和权威url见 https://s9etextformatter.readthedocs.io/Plugins/MediaEmbed/Sites/,以下为你们可能常用的网站:

u2b

https://www.youtube.com/watch?v=视频id
https://youtu.be/视频id?t=时间戳秒

www.youtube.com/watch?v=ScSW9C3DF18

youtu.be/YWQruBZYVOM?t=75

twitter

https://twitter.com/用户名/status/数字
twitter.com/PDChina/status/1469850907101700097

reddit

https://www.reddit.com/r/sub名/comments/主题帖hash
www.reddit.com/r/Hololive/comments/redfj9/that_smile_that_damn_smile/

已知问题

  1. 对于网抑云歌单与专辑(playlist与album)的嵌入iframe,如果歌单或专辑内有版权曲目,网抑云api可能随机返回要求用户登录(即便您在music.163.com登录后也无法把登录态传过去因为他们没有设置cookie为SameSite=None),iframe会alert弹窗资源加载失败

  2. 浏览器设置中禁用第三方cookie后会无法显示b站与网抑云iframe,需要通报他们修复,详见:n0099

  3. 以前发的已有回复帖中的链接不会被自动生成:https://github.com/FriendsOfFlarum/formatting/issues/32

  4. MediaEmbed本身提供支持的100多个网站中的部分iframe url可能被我所设置的CSP header拦截,如图:

    请在本帖下回复提醒我去增加白名单

  5. 对于用户,最好不要在一个回复帖及其主题帖可显示的回复帖列表内堆砌太多嵌入iframe(就像本帖),不然浏览器会特别吃内存并卡js。如果您不想让链接自动生成iframe,可以用<>包裹链接,形如<https://youtu.be/YWQruBZYVOM>https://youtu.be/YWQruBZYVOM

如果您需要嵌入不在上述及s9e\TextFormatter所自带列表中的网站,请在本帖回复并提供其资源权威url与iframe嵌入url,您可以在 https://iframely.com/embed http://iframe.ly/domains.json 找到一些网站(1000+)已有的url

    由于 https://b23.wtf,对于目前b站客户端分享后生成的https://b23.tv/短链接,通过 https://s9etextformatter.readthedocs.io/Plugins/MediaEmbed/Add_custom/#how-to-scrape-content 提供的服务端解析重定向以去除其重定向带来的tracing querystring,并显示为https://b23.tv/av/bvid形式

    n0099
    目前对b站主域和网抑云的url做了预处理去除p数和id之外的所有querystring以改成权威url,这样后端数据库中也不会存储带有tracing信息的url
    b23.tv短域目前没有这样预处理,仍然是仅在显示时才替换为权威url
    同样由于已知问题3:https://github.com/FriendsOfFlarum/formatting/issues/32 以前已发布的帖子暂时不会这样替换
    已禁用扩展justoverclock/flarum-ext-purify可使用此方式实现其效果:https://github.com/justoverclockl/flarum-ext-purify/issues/4#issuecomment-992667190

      3 个月 后
      1 个月 后

      n0099 啊不加--会被吞 好的 现在知道了捏~

      彗星の如く現れた星の原石

      アイドルvtuberほしまちすいせい☄~

      すいちゃんは——今日もかわいい!

      No life must forced to stop

      积分: 18
      1 个月 后
      2 个月 后

      修复了一个长期存在的罕见bug:当链接前面紧更着任意非ascii字母数字时,会生成mediaembed,但不会生成parser所添加的url
      比如对于中文https://www.youtube.com/watch?v=rR8W-f9YhYA



      另外如果链接前面跟的是字母数字,如 abchttps://www.youtube.com/watch?v=rR8W-f9YhYA ,那也不会生成mediaembed,而是只生成链接
      可能与此相关的s9e issue:https://github.com/s9e/TextFormatter/issues/91

      此修复影响了至多11个回复帖:

      积分: 15

        由于n0099 不强自自🎌 中所提到的b站网页链接中存在着tracing参数可追溯用户
        建议大家在复制粘贴b站链接时删除掉链接末尾之后的所有querystring,或者使用 https://github.com/ClearURLs/Addon
        我已清理了现有的22个回复帖其中带有tracing参数的b站网页链接:n0099 ,以及3个带有许多网站常用的utm和spm参数(分别是google analytics和阿里的)的回复帖

          5 天 后

          n0099


          原来如此 感谢提醒

          彗星の如く現れた星の原石

          アイドルvtuberほしまちすいせい☄~

          すいちゃんは——今日もかわいい!

          No life must forced to stop

          积分: 18
            4 天 后
            1 年 后