从URL中抓取mp4文件


Scrape mp4 file from a URL?

我在服务器上运行ffmpeg,并将其与PHP一起使用。我想知道是否可以输入网页的URL,并让它搜索.mp4文件的源代码。然后将其用作HTML表单中的上传文件,并用PHP进行处理。我还希望能够抓取页面上的其他数据。

有人能推荐一个很好的教程或课程来通过在HTML表单中输入URL来抓取数据吗?或者简单地回答我的问题。我对此有点不知所措。

这是一个很高的要求,这不是一个完整的答案,但这是你开始的地方。。。

从url检索数据

<?php
$homepage = file_get_contents('http://www.example.com/');
echo $homepage;
?>

这来自=>http://php.net/manual/en/function.file-get-contents.php

基本上,它下载网页的内容,并将生成的文本存储在变量$homepage中,然后输出

现在!您不想输出变量,而是想查找字符串".mp4",但这并没有那么简单。您将不得不使用正则表达式。

查看

用于匹配url的正则表达式模式(带或不带)http://www

您需要将URI与末尾的.mp4进行匹配。

例如

<?php
$subject = "abcdef";
$pattern = '/^def/';
preg_match($pattern, substr($subject,3), $matches, PREG_OFFSET_CAPTURE);
print_r($matches);
?>

将产生

Array
(
    [0] => Array
        (
            [0] => def
            [1] => 0
        )
)

您可以对preg_match使用相同的行为和功能,并检索页面上所有.mp4文件的所有命中率在上面链接提供的代码中,您必须修改PATH部分,并在末尾包含.mp4

一旦你有了MP4文件的url,你需要检查它前面是否有http。如果没有,那意味着它是一个相对路径。如果是这种情况,您需要解析url,在相对路径上加上绝对路径,以获得MP4文件的完整url。然后,您可以再次使用file_get_contents下载mp4文件,并按照自己的意愿进行操作。

结论

这并不是一个完整的代码答案,但它是一种如何实现愿望的方法。如果您需要进一步的指导,我可以编辑并包含更多信息。