【问题标题】:How to find .m3u8 file from URL and download it如何从 URL 中找到 .m3u8 文件并下载
【发布时间】:2020-08-26 00:32:02
【问题描述】:

我正在尝试从给定的网站 URL 查找并下载 m3u8 文件。我该怎么做?我查看了页面源代码,找不到任何指向任何 m3u8 文件的链接,但我可以看到正在发送网络 GET 请求以在 Chrome 的开发工具网络选项卡中下载 m3u8 文件。

那么有谁知道如何从给定的网站 URL 中检测链接到 m3u8 文件的 URL 以及如何下载它?

【问题讨论】:

    标签: python web-scraping m3u8


    【解决方案1】:

    .m3u8.mpd 链接是特殊元素,不是 HTML 的一部分。

    您可以在网络请求中找到它们,通常它们会在您单击视频上的播放按钮后出现。它们用于分段流式传输内容,而不是让您访问视频文件。

    这是我用 Selenium 使用了一段时间的 sn-p 来检索它们。它不适用于 100% 的情况,但它仍然适用于许多网站:

    JS_get_network_requests = "var performance = window.performance || window.msPerformance || window.webkitPerformance || {}; var network = performance.getEntries() || {}; return network;"
    network_requests = driver.execute_script(JS_get_network_requests)
    for n in network_requests:
        if ".m3u8" in n["name"]: 
            print(n["name"])
    

    附:如果视频嵌入在 iframe 中,则必须切换到 iframe 才能从视频中获取网络请求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-01
      相关资源
      最近更新 更多