• 30-09-2018, 23:39:19
    #1
    Üyeliği durduruldu
    merhaba arkadaşlar;

    sadece yazıları regexleyebileceğimiz bir kod varmı php de.

    örneğin hüriyet milliyet,kişisel blog sitelerine bağlandığımız zaman sadece yazıları gösterebilecek bir kod?
  • 01-10-2018, 00:36:08
    #2
    uzak siteden çektiğiniz kaynak kodun içinden sadece yazıları almak için strip_tags fonksiyonunu kullanabilirsiniz

    $veri = strip_tags($uzak_siteden_kaynak_kod);

    veya sadece istediğiniz html etiketlere izin vermek isterseniz

    $veri = strip_tags($uzak_siteden_kaynak_kod,'<div><h1><p>' );
    sadece div,h1,p etiketleri ve yazılar gelir diğer html etiketler temizlenir

    bknz. http://php.net/manual/tr/function.strip-tags.php
  • 01-10-2018, 02:39:05
    #3
    Üyeliği durduruldu
    OnurTasci adlı üyeden alıntı: mesajı görüntüle
    uzak siteden çektiğiniz kaynak kodun içinden sadece yazıları almak için strip_tags fonksiyonunu kullanabilirsiniz

    $veri = strip_tags($uzak_siteden_kaynak_kod);

    veya sadece istediğiniz html etiketlere izin vermek isterseniz

    $veri = strip_tags($uzak_siteden_kaynak_kod,'<div><h1><p>' );
    sadece div,h1,p etiketleri ve yazılar gelir diğer html etiketler temizlenir

    bknz. http://php.net/manual/tr/function.strip-tags.php


    div class içindekini almaz bu kod.
  • 01-10-2018, 02:42:33
    #4
    GonGo adlı üyeden alıntı: mesajı görüntüle
    [/URL]

    div class içindekini almaz bu kod.
    daha fazla detay verebilirmisiniz.
  • 01-10-2018, 02:50:34
    #5
    Üyeliği durduruldu
    OnurTasci adlı üyeden alıntı: mesajı görüntüle
    daha fazla detay verebilirmisiniz.
    farklı farklı html yapıları olan sitelerden veri çekmeyi planladığım için, her siteye özgü regex kullanmak istemiyorum. ben sadece yazıları çekmek istiyorum ama bi sitede yazılar p tagında yer alırken, bir başkasında p tagı kullanmamakta, onun yerine class atayım css le yazıya düzen vermekte. bu bakımdan verdiğin kod sitelrinden çoğunda işe yarar ama benim aradığım çözüm değil.
  • 01-10-2018, 22:15:02
    #6
    GonGo adlı üyeden alıntı: mesajı görüntüle
    farklı farklı html yapıları olan sitelerden veri çekmeyi planladığım için, her siteye özgü regex kullanmak istemiyorum. ben sadece yazıları çekmek istiyorum ama bi sitede yazılar p tagında yer alırken, bir başkasında p tagı kullanmamakta, onun yerine class atayım css le yazıya düzen vermekte. bu bakımdan verdiğin kod sitelrinden çoğunda işe yarar ama benim aradığım çözüm değil.
    strip_tags fonksiyonu gelen kaynak koddaki tüm html taglarını temizler metin olarak sunar ama sadece content makale kısmı gelmez menüler, sidebardaki kısa yazılar vs. hepsi bir birine girer. Sizinde belirttiğiniz gibi her sitenin html kod yapısı farklı olduğu için siteye özel yapmalısınız. preg_match ile ilgili content divinin içindeki metni strip_tagsa sokarak makaleyi elde edebilirsiniz.

    Bu işlemin bir diğer yoluda rssdir. Eğer çekim yapacağınız siteler içeriğini rss vb. bir formatta paylaşıyorsa belki bu şekilde bir standartla her siteye özel yapı kurmaktan kurtulabilirsiniz ama rssdede genelde metinler kısıtlı sunulur.