php - 从 URL 抓取 mp4 文件?

标签 php html ffmpeg web-scraping

关闭。这个问题需要更多 focused .它目前不接受答案。












想改进这个问题?更新问题,使其仅关注一个问题 editing this post .


8年前关闭。







Improve this question




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

有人可以通过在 HTML 表单中输入 URL 来推荐一个好的教程或类(class)来抓取数据吗?或者如果它很简单,只需回答我的问题。我在这方面有点菜鸟。

最佳答案

这是一个相当艰巨的要求,这不是一个完整的答案,而是一个让你开始的地方......

从 url 检索数据

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

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

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

现在!与其输出变量,不如寻找字符串“.mp4”,但这并不是那么简单。您将不得不使用正则表达式。

看看

Regular expression pattern to match url with or without 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(s)。如果不是,则意味着它是相对路径。如果是这种情况,您需要解析 url 以在相对路径上添加绝对路径,以获取 MP4 文件的完整 URL。然后你可以使用 file_get_contents再次下载 mp4 文件并按照您的意愿进行操作。

结论

这不是一个完整的代码答案,但它是一种关于如何完成你想要的事情的方法。如果您需要进一步的指导,我可以编辑并包含更多信息。

关于php - 从 URL 抓取 mp4 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17794574/

相关文章:

php - 在 MySQL 中存储大量数据?

php - MySql 选择日期为上个月或更早日期的记录

jquery - child 和 parent 不工作

html - CSS:内联 block 与带框大小的 float 不在同一行

python - 如何在python中使用ffmpeg合并音频和视频文件?

php - 在 PHP 4 中获取本周星期一的日期

php - HTTP 获取变量

javascript - 数据在 Controller 中可用,但在 html 中无法解析

php - 如何在php中使用ffmpeg并上传和压缩文件

python - 使用 Popen 在 Python 中替换 Bash 进程