0

サーバーでffmpegを実行しており、PHPで使用しています。Web ページの URL を入力して、.mp4 ファイルのソース コードを検索することができるかどうか疑問に思っていました。それをHTML形式でアップロードしたファイルとして使用し、PHPで処理します。また、ページで見つかった他のデータをスクレイピングできるようにしたいと考えています。

HTMLフォームにURLを入力するだけでデータをスクレイピングするための優れたチュートリアルまたはレッスンを誰かが推奨できますか? または、単純な場合は私の質問に答えてください。私はこれに少し初心者です。

4

1 に答える 1

2

それは非常に難しい注文であり、これは完全な答えではありませんが、あなたが始める場所です...

URL からのデータの取得

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

これは=> http://php.net/manual/en/function.file-get-contents.phpからです

基本的には、Web ページのコンテンツをダウンロードし、結果のテキストを変数に格納して$homepageから出力します。

今!変数を出力する代わりに、代わりに文字列 ".mp4" を探したいと思うでしょうが、それほど単純ではありません。正規表現を使用する必要があります。

見て

http://www の有無にかかわらず URL に一致する正規表現パターン

末尾の .mp4 と URI を一致させる必要があります。

例えば

<?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 ファイルをダウンロードし、必要に応じて実行できます。

結論

これはコードによる完全な回答ではありませんが、希望することを達成する方法についての方法です。さらにガイダンスが必要な場合は、編集して詳細情報を含めることができます。

于 2013-07-22T18:59:48.307 に答える