dominod Posted August 3, 2010 Share Posted August 3, 2010 Hi I am trying to pull title and meta description from an URL.. To pull the URL I am using the code from http://www.dreamincode.net/code/snippet4625.htm... function getTitle($Url){ $str = file_get_contents($Url); if(strlen($str)>0){ preg_match("/\<title\>(.*)\<\/title\>/",$str,$title); return $title[1]; } } //Example: echo getTitle("http://www.cnn.com"); And to pull the meta description I am using the code from http://php.net/manual/en/function.get-meta-tags.php. // Assuming the above tags are at www.example.com $tags = get_meta_tags('http://www.cnn.com/') or die("Could not fetch meta tags"); // Notice how the keys are all lowercase now, and // how . was replaced by _ in the key. echo $tags['author']; // name echo $tags['keywords']; // php documentation echo $tags['description']; // a php manual echo $tags['geo_position']; // 49.33;-86.59 So my complete code looks like this: <html> <head> </head> <body> <?php function getTitle($Url){ $str = file_get_contents($Url); if(strlen($str)>0){ preg_match("/\<title\>(.*)\<\/title\>/",$str,$title); return $title[1]; } } //Example: echo getTitle("http://www.cnn.com"); // Assuming the above tags are at www.example.com $tags = get_meta_tags('http://www.cnn.com/') or die("Could not fetch meta tags"); // Notice how the keys are all lowercase now, and // how . was replaced by _ in the key. echo $tags['author']; // name echo $tags['keywords']; // php documentation echo $tags['description']; // a php manual echo $tags['geo_position']; // 49.33;-86.59 ?> Test! </body> </html> But it wont work... All I get is "Could not fetch meta tags".. I've tried different URLs and such but still wont work .. Anyone have an idea? Quote Link to comment Share on other sites More sharing options...
ram4nd Posted August 3, 2010 Share Posted August 3, 2010 get_meta_tags('http://www.cnn.com/') gets data from file, not from web(url) Quote Link to comment Share on other sites More sharing options...
dominod Posted August 3, 2010 Author Share Posted August 3, 2010 Thats not what it sais at PHP.net ? http://php.net/manual/en/function.get-meta-tags.php The path to the HTML file, as a string. This can be a local file or an URL. Quote Link to comment Share on other sites More sharing options...
monkeytooth Posted August 3, 2010 Share Posted August 3, 2010 File as in source code of said file. From said URL so in regards to ram4nd, if you use his cnn.com idea you would likely pull info from the index.html, php, asp, whatever is there default landing page. Quote Link to comment Share on other sites More sharing options...
dominod Posted August 4, 2010 Author Share Posted August 4, 2010 I fixed it! If anyone wanna know, here is the code I used: <html> <head> </head> <body> <?php $news = $_GET["news"]; function getTitle($Url){ $str = file_get_contents($Url); if(strlen($str)>0){ preg_match("/\<title\>(.*)\<\/title\>/",$str,$title); return $title[1]; } } //Example: echo getTitle("$news"); echo "<br><br>"; // Assuming the above tags are at www.example.com $tags = get_meta_tags($news) or die("Could not fetch meta tags"); echo $tags['keywords']; // a php manual echo "<br><br>"; echo $tags['description']; // a php manual ?> </body> </html> Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.