
ربما كنت بحاجة للحصول على المحتوى, أو جزء منه, من موقع على شبكة الانترنت, إما لجمع البيانات أو لتنفيذ أي نوع من رصد عن شيء, أو ببساطة لأنك تريد إنشاء الخاصة بك الزاحف, الذي يحلل صفحات الويب, كما تفعل السير من جوجل, بنج, ياهو,…
في بي هناك مكتبة مفيدة جدا أن يساعدنا على أداء هذه المهمة. اسمه حليقه ويسمح بالاتصال ببيئات أخرى باستخدام بروتوكولات مختلفة. من خلال cURL سنرى كيف يمكنك الحصول على محتوى الويب في PHP.
كيفية الحصول على محتوى صفحة ويب باستخدام مكتبة cURL في PHP
استخدام مكتبة cURL, يمكنك الحصول على المحتوى اكتمال صفحة ويب. بمجرد الانتهاء من المحتوى الخاص بك, يمكنك إجراء أي بحث على ذلك. على سبيل المثال, في التعليمات البرمجية في بي إتش بي أن نظهر لكم هنا, لدينا وظيفة التي تحصل على محتوى موقع على شبكة الانترنت الذي يتم تمرير URL إليها كمعلمة, وإرجاع سلسلة نصية تمثل صفحة الويب تلك.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | function getContenidoWeb($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); $data = curl_exec($ch); curl_close($ch); return $data; } //Ejemplo de uso $cadena = getContenidoWeb('http://www.web.com'); |
بمجرد أن يكون لديك محتوى الويب في سلسلة, احتمال واحد هو تحليله وتحويله إلى كائن إكس أم ال o دوم, لتسهيل التعامل معها.
مثال على ذلك هو استخدام الفئة دومدوكمنت. باستخدام هذه الفئة يمكنك تحليل السلسلة التي حصلت عليها سابقا وتحويلها إلى كائن xml أو شجرة dom الخاصة به. مثال على ذلك هو ما يلي:
1 2 | $doc = new DOMDocument(); $doc->loadHTML($cadena); |
في هذه التعليمة البرمجية, يمكننا أن نرى كيف, أولاً وقبل كل شيء, نحن إنشاء مستند DOMDocument, حيث نقوم بتحميل محتوى المتغير $سلسلة, وهو الذي تم الحصول عليه أعلاه من الدالة الحصول على شبكة الإنترنت.
وبهذه الطريقة يمكنك الحصول على محتوى صفحة ويب باستخدام PHP ومن ثم تحويله إلى XML أو شجرة DOM الخاصة به لتكون قادرة على إدارتها بطريقة أفضل.
