• 05-03-2021, 16:27:56
    #1
    Merhaba,

    Bir sitenin html çıktısını anlık olarak , sadece header tagları arasındaki tüm kodları çekip yansıtacak (başka bir yazılımda html çıktısını gösterecek) bir şey yapılabilir mi?

    Ücretli ücretsiz yardımcı olacak var mı?
  • 05-03-2021, 16:34:59
    #2
    Jsx
    Kimlik doğrulama veya yönetimden onay bekliyor.
    $data = file_get_contents("https://google.com/");
    //if(preg_match('#<header>(.*?)</header>#',str_replace(["\n","\r"], "", $data),$header)){
    if(preg_match('#<header class="header">(.*?)</header>#',str_replace(["\n","\r"], "", $data),$header)){
        echo $header[1];
    }
  • 05-03-2021, 17:06:34
    #3
    Jsx adlı üyeden alıntı: mesajı görüntüle
    $data = file_get_contents("https://google.com/");
    //if(preg_match('#<header>(.*?)</header>#',str_replace(["\n","\r"], "", $data),$header)){
    if(preg_match('#<header class="header">(.*?)</header>#',str_replace(["\n","\r"], "", $data),$header)){
        echo $header[1];
    }
    Selam, bunu hostingde denedim ama boş sayfa çıkıyor.
  • 05-03-2021, 19:04:55
    #4
    Açıklamaları yanlarına yazdım
    $data = file_get_contents("https://google.com/");
    print_r($data); // html çıktısı gelmesi gerekiyor ekrana gelmez ise curl ile yapılması gerekebilir belki bu yüzdenn boş ekran vermiş olabilir
    //if(preg_match('#<header>(.*?)</header>#',str_replace(["n","r"], "", $data),$header)){
    if(preg_match('#<header class="header">(.*?)</header>#',str_replace(["n","r"], "", $data),$header)){ // <header>(.*?)</header> bu taglar arasındaki değerleri alacak mesela <header><span>1</span></header> gibi span ve 1 i alacak ama diyelim ki <header class="class x y z">....</header> class larıda olabilir yukarıdaki örnekte vermiştim inceleyin bir isterseniz
     echo $header[1];
    }
  • 05-03-2021, 20:13:24
    #5
    function arasini_al($bas = "", $son = "", $icerik){
        $icerik = ' ' . $icerik;
        $ini = strpos($icerik, $bas);
        if ($ini == 0) return '';
        $ini += strlen($bas);
        $uzunluk = strpos($icerik, $son, $ini) - $ini;
        return substr($icerik, $ini, $uzunluk);
    }
        
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "http://siteadresi");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    $sonuc = curl_exec($ch);
    curl_close($ch);
    
    $istenilen_tag = arasini_al('<istenilen_tag_ac>', '</istenilen_tag_kapa>', $sonuc);
    echo $istenilen_tag;