- Home
- Przykłady i porady PHP79
- Inne pomoce, software6
- Banery
- Hyde Park Private Zone6
- Polityka cookies
- Udostępnianie tekstów
© 2001 - 2024 PhpCodex
Pobieramy tagi przy pomocy curl
Get meta tags, Curl method
Przykład PHP2014-03-07 stopień trudności: łatwyPoniższy przykład pokazuje jak pobrać informacje z nagłówków meta za pomocą CURL
<?
$nurl = "http://beagle.phpcodex.com/";
function file_get_content($nurl)
{
//inicjujemy curl
$ch = curl_init();
//dodajemy opcje
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $nurl);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
//pobieramy zawartość całej strony
$html = file_get_content($nurl);
//zmienna $html będzie zawierać wczytaną zawartość strony
//niektóre strony są zabezpieczone przed takim wczytaniem stron
//więc nie wszędzie CURL będzie działać
$doc = new DOMDocument();
@$doc->loadHTML($html);
$nodes = $doc->getElementsByTagName('title');
//pobieramy zawartość tagów
$title = $nodes->item(0)->nodeValue;
$metas = $doc->getElementsByTagName('meta');
for ($i = 0; $i < $metas->length; $i++)
{
$meta = $metas->item($i);
if($meta->getAttribute('name') == 'description')
$description = $meta->getAttribute('content');
if($meta->getAttribute('name') == 'keywords')
$keywords = $meta->getAttribute('content');
}
//mała poprawka kodowania do utf-8
function convertEncoding($str, $from = 'auto', $to = "UTF-8") {
if($from == 'auto') $from = mb_detect_encoding($str);
return mb_convert_encoding ($str , $to, $from);
}
//celowo wydłużam kod aby go łatwiej było zrozumieć
//można zastosować echo convert_encoding($title)."<br/>";
$title = convertEncoding($title);
$description = convertEncoding($description);
$keywords = convertEncoding($keywords);
//i wyświetlamy
echo $title ."<br/>";
echo $description."<br/>";
echo $keywords ."<br/>";
?>
manual: curl_init() curl_setopt() mb_convert_encoding()