V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
rayfor2012
V2EX  ›  iOS

iOS 如何嗅探视频并能保存其下载地址?求助大神

  •  
  •   rayfor2012 · 2021-10-24 21:17:53 +08:00 · 2455 次点击
    这是一个创建于 908 天前的主题,其中的信息可能已经有所发展或是发生改变。

    iOS 如何嗅探视频并能保存其下载地址,类似 UC 浏览器打开网页如果有视频存在,提示下载保存。 iOS 上拦截 wk 请求?如何判断其资源类型呀?求助大神!!!

    9 条回复    2021-11-04 17:17:28 +08:00
    leshijiazu
        1
    leshijiazu  
       2021-10-24 21:22:38 +08:00 via iPhone
    iOS 捷径,去捷径社区找全能的视频下载捷径
    MonikaCeng
        2
    MonikaCeng  
       2021-10-24 23:26:33 +08:00 via Android
    wkwebview 拦截所有请求,判断 header 里的 content-type 是否是 video 或者 m3u8 之类的。普通视频链接直接下载,m3u8 的话,把所有切片下载然后 ffmpeg 拼接。dash mpd 切片的话,可能得研究一下
    aero99
        3
    aero99  
       2021-10-25 09:51:51 +08:00
    @leshijiazu 试过都已经失效了,苹果好像不允许手机 APP 有流媒体下载功能,以前有个某浏览器内置这种下载后续版本取消了。搞得我现在只能在电脑用 downie4 下载
    vincentcw
        4
    vincentcw  
       2021-10-25 09:57:05 +08:00 via iPhone
    alook 试过了吗?我怎么用 alook 都可以。
    kingsley777
        5
    kingsley777  
       2021-10-25 11:26:56 +08:00 via iPhone
    @aero99 alook 可以 不过要手动添加链接。不然会显示不支持流媒体。
    @vincentcw 请问你有遇到过 Alook 占用 3 个 G 的情况吗?缓存和下载都清空了的
    aero99
        6
    aero99  
       2021-10-25 16:00:36 +08:00
    @kingsley777 alook 试过最新版本不可以,据说老版本行
    vincentcw
        7
    vincentcw  
       2021-10-26 00:25:54 +08:00 via iPhone
    @kingsley777 没有耶 但是我下载不算多 没留意锅
    rayfor2012
        8
    rayfor2012  
    OP
       2021-11-04 15:36:56 +08:00
    @MonikaCeng 首先很感谢,我也是通过拦截所有请求,然后把拦截到的 url 重新请求,获取 URLSessionDataTask ,然后通过 mimeType 来判断是否是视频格式。但是这种有的时候拦截不到。怎么准确判断页面中是否存在视频格式?你这边说的 content-type 怎么来获取到呢?
    MonikaCeng
        9
    MonikaCeng  
       2021-11-04 17:17:28 +08:00 via Android
    @rayfor2012

    content-type 在 headers 里,你可以查一下视频和 m3u8 的 content-type ,然后拦截匹配
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   987 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 22:39 · PVG 06:39 · LAX 15:39 · JFK 18:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.