使用PHP从Facebook页面获取标题和元标记

时间:2013-09-19 00:20:31

标签: php facebook title

如何从Facebook页面获取标题和所有元标记?

我有这段代码:

function getMetaData($url){
   // get meta tags
   $meta=get_meta_tags($url);
   // store page
   $page=file_get_contents($url);
   // find where the title CONTENT begins
   $titleStart=strpos($page,'<title>')+7;
   // find how long the title is
   $titleLength=strpos($page,'</title>')-$titleStart;
   // extract title from $page
   $meta['title']=substr($page,$titleStart,$titleLength);
   // return array of data
   return $meta;
}
$tags=getMetaData('https://www.facebook.com/showmeapp?filter=3');
echo 'Title: '.$tags['title'];
echo '<br />';
echo 'Description: '.$tags['description'];
echo '<br />';
echo 'Keywords: '.$tags['keywords']

示例:https://www.facebook.com/showmeapp?filter=3

3 个答案:

答案 0 :(得分:0)

您真的不需要处理Metatags,只需调用Graph API:

$data = file_get_contents('https://graph.facebook.com/bladauhu'); //example page

即使没有应用程序也适用于每个公共页面。

答案 1 :(得分:0)

我认为网址不正确将您的网址更改为https://graph.facebook.com/showmeapp

答案 2 :(得分:0)

使用简单的HTML DOM解析器

http://simplehtmldom.sourceforge.net/

尝试以下代码:

  <?php 
  require_once('simple_html_dom.php');

  $page=$html = file_get_html('https://www.facebook.com/showmeapp');

  $title= $html->find('meta[name="title"]',0)->content;
  echo 'Title: '.$title ;
  echo '<br />';

  $description= $html->find('meta[name="description"]',0)->content;

  echo 'Description: '.$description;
  echo '<br />';

  $keywords= $html->find('meta[name="keywords"]',0)->content;
  echo 'Keywords: '.$keywords;
  ?>