• 18-10-2022, 23:08:43
    #1
    Merhabalar,

    yaptığım çekme işlemi aşağıdaki gibi.
    <?php
    include ("simple_html_dom.php");
    $html = file_get_html("https://yokatlas.yok.gov.tr/tercih-sihirbazi-t4-tablo.php?p=s%C3%B6z");
    foreach($html->find("thead th") as $h)
    {
         echo $h->text();
    }
    foreach($html->find("#mydata tbody tr") as $tr)
    {
         echo $tr->text();
    }
    ?>
    Çıktısı :


    Sorum şu : siteden tablonun thead kısmını çekebiliyorken tbody alanını çekmiyor. Neden olabilir .Yardımcı olabilecek var mı ?

    Şimdiden teşekkürler,
    saygılarımla,
    iyi forumlar.
  • 18-10-2022, 23:13:19
    #2
    Hocam bu tür işlemleri yaparken, sayfanın kaynak kodunda, tbody kısmında gördüğünüz herhangi bir text, içerik var mı diye bir kontrol edin.
    Örnek verdiğiniz sitedeki tablo verileri dinamik olarak başka bir sayfadan çekiliyor. Sizin kullandığınız yöntemle bu verileri kaynak kodlarından erişemezsiniz.
  • 18-10-2022, 23:14:23
    #3
    10. Satırda #mydata kısmıni silip bi denermisin
  • 18-10-2022, 23:14:38
    #4
    Mhmmd adlı üyeden alıntı: mesajı görüntüle
    Hocam bu tür işlemleri yaparken, sayfanın kaynak kodunda, tbody kısmında gördüğünüz herhangi bir text, içerik var mı diye bir kontrol edin.
    Örnek verdiğiniz sitedeki tablo verileri dinamik olarak başka bir sayfadan çekiliyor. Sizin kullandığınız yöntemle bu verileri kaynak kodlarından erişemezsiniz.
    cevap için teşekkürler
    önerebilecğeiniz farklı bir çözüm var mı ? yoksa hiçbir şekilde erişemem mi ?
  • 18-10-2022, 23:17:49
    #5
    birciftmavigoz adlı üyeden alıntı: mesajı görüntüle
    önerebilecğeiniz farklı bir çözüm var mı ? yoksa hiçbir şekilde erişemem mi ?
    Bu verilere tek seferlik ihtiyacınız varsa eğer, tempermonkey ile tarayıcı eklentisinden javascriptle çekebilirsin.
    Ben denemedim ancak CORS engeli var mı bilmiyorum. Örnek verdiğiniz sitenin verileri çektiği url;
    https://yokatlas.yok.gov.tr/server_s...2016-TS-t4.php
    post methodu ile çalışıyor. Buraya post isteği atarak bi deneme yapabilirsiniz.