Codeigniter: فئة/مكتبة للمساعدة في الحصول على علامات التعريف من صفحة ويب؟
-
20-09-2019 - |
سؤال
أنا أستخدم codeigniter. أعتقد أنه لا يهم أي إطار PHP الذي أستخدمه.
ولكن قبل أن أكتب صفي الخاص ، هناك آخر تم كتابته بالفعل يسمح للمستخدم بالحصول على عنوان الصفحة وعلامات التعريف (الكلمات الرئيسية ، أوصاف) لأي جلسة ... إذا كان لديهم أي شيء.
أي نوع من فئة PHP التي تفعل ذلك سيكون رائعا.
شكرا لكم جميعا
المحلول
يجب أن تلقي نظرة على هذا الفصل: PHP Simple HTML DOM يعمل بهذه الطريقة:
include('simple_html_dom.php');
$html = file_get_html('http://www.codeigniter.com/');
echo $html->find('title', 0)->innertext; // get <title>
echo "<pre>";
foreach($html->find('meta') as $element)
echo $element->name . " : " . $element->content . '<br>'; //prints every META tag
echo "</pre>";
نصائح أخرى
يمكنك الحصول على جميع علامات META Froma Remote Page مع Get_meta_tags - http://ca3.php.net/get_meta_tags
تحتوي هذه الصفحة على فصل دراسي للحصول على الصفحة والوصف ، فهي تستخدم أيضًا get_meta_tags - http://www.emirplicanic.com/php/get-remote-page-title-with-php.php
يجب أن تكون قادرًا على الجمع بين البتات من كليهما للحصول على كل ما تحتاجه.
استخدم مكتبة PHP's Curl. يمكنه سحب صفحات أخرى من الويب وجلبها كأسلاك ، ثم يمكنك تحليل السلسلة مع تعبيرات منتظمة للعثور على عنوان الصفحة وعلامات التعريف.
انظر هذا من فضلك. هذه فئة عامة للحصول على علامات meta صفحة والقيام بالكثير. معرفة ما إذا كان يمكنك إضافة هذا في مكتبة Codeigniter. شكرًا
مع DOM/XPATH
libxml_use_internal_errors(true);
$c = file_get_contents("http://url/here");
$d = new DomDocument();
$d->loadHTML($c);
$xp = new domxpath($d);
foreach ($xp->query("//meta[@name='keywords']") as $el) {
echo $el->getAttribute("content");
}
foreach ($xp->query("//meta[@name='description']") as $el) {
echo $el->getAttribute("content");
}