我有一个 URL,无法使用 PHP 下载视频文件。我必须在浏览器中运行它,以便代码可以开始从中下载视频。
我尝试过使用curl,第一次通过代码点击url时它无法下载视频。 我尝试通过创建视频 blob 来使用 Ajax 调用,它可以工作,但是由于 cron 作业,javascript 无法工作。
我需要 PHP 解决方案。
在 PHP 中使用 Guzzle
require_once('guzzle/vendor/autoload.php');
use GuzzleHttp\Client;
use GuzzleHttp\Exception\RequestException;
$client = new Client();
$url = 'video url'; // URL of the file to download
$file_name = 'filename.mp4';
$saveTo = $save_file_loc = __DIR__."/".$file_name; // Local path to save the file
try {
$response = $client->request('GET', $url, ['sink' => $saveTo]);
echo "File downloaded successfully to " . $saveTo;
} catch (RequestException $e) {
echo "Error: " . $e->getMessage();
if ($e->hasResponse()) {
echo "\nHTTP Status Code: " . $e->getResponse()->getStatusCode();
}
}