php получение метаданных - PullRequest
0 голосов
/ 14 марта 2011

Я пытаюсь извлечь метаданные сайта, используя следующий код я немного изменил свой код

<?php
error_reporting(E_ALL);
$domain='http://www.yahoo.com';
?>

<h3>Reading the meta-data tags of website: <?php echo $domain; ?></h3>

<?php 

  echo 'Read META info<br>';
  $tags = get_meta_tags($domain);

  echo 'Check the result and display it.<br>';

  if(isset($tags))
      echo 'Tags is set';

  if (sizeof($tags) == 0){
    echo '<tr><td>No META information was found!</td></tr>';
  }
  else
  {
  echo 'Metadata found !!';
  print_r($tags);
  }

?>

Но я не получаю никакого результата. Я запускаю этот скрипт моего локального сервера WAMP. Куда я иду не так? просто ищу, чтобы найти основную информацию о странице.

это результат, который я получаю «Чтение метаданных тегов сайта: http://www.yahoo.com Прочитайте информацию МЕТА Проверьте результат и отобразите его. Теги установленыМетаданные найдены !! "

но нет вывода из print_r ($ tags)

Ответы [ 3 ]

1 голос
/ 14 марта 2011

у меня все работает нормально.Может быть, у вас не включен curl?Можете ли вы предоставить нам свой вывод phpinfo?

Просто создайте phpinfo.php файл со следующим кодом внутри:

<?php
phpinfo();
?>

Если о curl не будет ни слова, вам нужно открыть свой phpINI-файл, найдите строку ;extension=php_curl.dll и раскомментируйте ее (удалив ; char)

, затем перезапустите apache

0 голосов
/ 18 января 2013

Для yahoo.com и google.com вы не получите никаких метатегов.Я также пытался, но я не знаю почему, может быть, эти сайты работают как поисковая система.

<?php
 $tags = get_meta_tags('http://sitename.com/');

 echo $tags['keywords'];    
 echo $tags['description'];  
?>

Этот код работает для других сайтов, на которых упоминаются метатеги.

0 голосов
/ 14 марта 2011

Все должно работать нормально, попробуйте отладить строку за строкой, используя print_r($tags).В любом случае, если он хорошо читается, вы можете получить, например, такие ключевые слова, как:

$kws = explode(",",$meta['keywords']);
for ($i=0;$i<count($kws);$i++)
{
    $kws[$i] = ltrim($kws[$i]);
    $kws[$i] = rtrim($kws[$i]);
    echo($kws[$i]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...