كيف اجلب الروابط من موقع باستخدام php

السلام عليكم . و تحية طيبة للجميع.

كيف اجلب كل الروابط التي تكون نهايتها هكذا

video.mp4 و

.... video.mp4?token=xxxx

من صفحة ويب موقع اخر باستخدام php .؟

وشكرا.


يمكنك تحميل صفحة html لشيفرتك لتعمل عليها البحث من خلال دالة file_get_html ومرر لها رابط الموقع

<?php $html = file_get_html('http://www.videos.com/'); ?>

ثم نتفحص الصفحة ونبحث عن عناصر video كالتالي:

<?php foreach($html->find('video') as $element){ 
      echo $element->src . '<br>'; 
} ?>

هذا سيعيد جميع روابط ملفات الفيديو.

يمكن تطبيق نفس الفكرة على عناصر a

ويمكن استخدام preg_match للبحث في نص الصفحة و تمرير نمط فيه mp4. للبحث عنه كالتالي:

<?php $URL ="http://www.videos.com/"; 
$Fetched_Contents = file_get_contents($URL); 
if (preg_match('/<source(.*?)src="(.*?).mp4(.*?)"/i', $Fetched_Contents, $MP4_Link)){ 
$Complete_MP4_Link = "{$MP4_Link[2]}.mp4{$MP4_Link[3]}";
echo $Complete_MP4_Link;
 }else{ 
echo "Didn't found any mp4 link."; 
} 
?>

شكرا على ردك اخي وائل @waelaljamal

الكود الذي وضعت اعرفه . و ليس هو المطلوب

صفحة مليئة بالروابط  ممكن تكون json او txt و انا اريد جلب فقط الروابط بامتداد :

http://www.domain.com/video...

و

http://www.domain.com/video...

وترك باقي الروابط الاخرى,

نعم preg_match يعمل فلترة حسب النمط الممرر و يستخلص منه المطلوب