• 22-11-2019, 04:08:09
    #1
    Merhabalar,

    Aşağıdaki ufak kod ile Trendyol dan ürünün fiyatını almaya çalışıyorum fakat sayda sürekli yüklenme halinde ve bir sonuç alamıyorum. N11'den fiyat çekerken bir problem yaşamıyorum.

    Yardımcı olabilir misiniz ?

    $veri= file_get_contents("https://www.trendyol.com/ozcan-aydinlatma/sorti-aplik-2111-02-p-152840?boutiqueId=317656&merchantId=104837");
    preg_match_all('@<span class="prc-slg">(.*?)</span>@si',$veri,$fiyat);
    
    echo "Trendyol Fiyat: ".$fiyat[0][0];
  • 22-11-2019, 04:47:06
    #2
    Üyeliği durduruldu
    Bot işlerinden anlamam ama bi göz atin.
    function siteAdresi($site)
    {
    $ch = curl_init();
    $hc = "YahooSeeker-Testing/v3.9 (compatible; Mozilla 4.0; MSIE 5.5; Yahoo! Search - Web Search)";
    curl_setopt($ch, CURLOPT_REFERER, 'http://www.google.com');
    curl_setopt($ch, CURLOPT_URL, $site);
    curl_setopt($ch, CURLOPT_USERAGENT, $hc);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $site = curl_exec($ch);
    curl_close($ch);
    preg_match_all('@<span class="prc-slg">(.*?)</span>@si',$site,$veri_derece1);
    print_r($veri_derece1[1][0]);
    }
    $veri = siteAdresi('https://www.trendyol.com/ozcan-aydinlatma/sorti-aplik-2111-02-p-152840?boutiqueId=317656&merchantId=104837');
  • 22-11-2019, 05:02:04
    #3
    hocam buyur tam calisan kod boyle olmali
    <?php
    function siteAdresi($site)
    {
    $ch = curl_init();
    $hc = "YahooSeeker-Testing/v3.9 (compatible; Mozilla 4.0; MSIE 5.5; Yahoo! Search - Web Search)";
    curl_setopt($ch, CURLOPT_REFERER, 'http://www.google.com');
    curl_setopt($ch, CURLOPT_URL, $site);
    curl_setopt($ch, CURLOPT_USERAGENT, $hc);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $site = curl_exec($ch);
    curl_close($ch);
    return $site;
    }
    function search($start, $end, $string)
    {
    @preg_match_all('/' . preg_quote($start, '/') .
    '(.*?)'. preg_quote($end, '/').'/i', $string, $m);
    return @$m[1];
    }
    
    $veri= siteAdresi("https://www.trendyol.com/fox-shoes/siyah-kadin-cizme-e726203409-p-3597045?boutiqueId=372256&merchantId=107292");
    echo "Trendyol Fiyat: ".search('"sellingPrice":{"text":"','","',$veri)[0];
    ?>
    sebebine gelince senin yaptigin file_get_content dinamik uretilen ve o anda html content uretmeyin renderla calisan sitelerde calismaz sanriim dosya olarak istiyorsun datayi. Ama o data bir dosyadan gelmiyor. Surekli acik kaliyor dosyanin ucu.
    N11 de bu olmayabilir ama Trendyolda varmis.
    Ikinci olarak trendyol icerisinde json olarak sellingPrice adiyla bunu iceriyor zaten ordan cektim 1-2 deneme de yaptim aliyor fiyati
  • 22-11-2019, 05:19:34
    #4
    Üyeliği durduruldu
    asiminnesli adlı üyeden alıntı: mesajı görüntüle
    hocam buyur tam calisan kod boyle olmali
    <?php
    function siteAdresi($site)
    {
    $ch = curl_init();
    $hc = "YahooSeeker-Testing/v3.9 (compatible; Mozilla 4.0; MSIE 5.5; Yahoo! Search - Web Search)";
    curl_setopt($ch, CURLOPT_REFERER, 'http://www.google.com');
    curl_setopt($ch, CURLOPT_URL, $site);
    curl_setopt($ch, CURLOPT_USERAGENT, $hc);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $site = curl_exec($ch);
    curl_close($ch);
    return $site;
    }
    function search($start, $end, $string)
    {
    @preg_match_all('/' . preg_quote($start, '/') .
    '(.*?)'. preg_quote($end, '/').'/i', $string, $m);
    return @$m[1];
    }
    
    $veri= siteAdresi("https://www.trendyol.com/fox-shoes/siyah-kadin-cizme-e726203409-p-3597045?boutiqueId=372256&merchantId=107292");
    echo "Trendyol Fiyat: ".search('"sellingPrice":{"text":"','","',$veri)[0];
    ?>
    sebebine gelince senin yaptigin file_get_content dinamik uretilen ve o anda html content uretmeyin renderla calisan sitelerde calismaz sanriim dosya olarak istiyorsun datayi. Ama o data bir dosyadan gelmiyor. Surekli acik kaliyor dosyanin ucu.
    N11 de bu olmayabilir ama Trendyolda varmis.
    Ikinci olarak trendyol icerisinde json olarak sellingPrice adiyla bunu iceriyor zaten ordan cektim 1-2 deneme de yaptim aliyor fiyati
    sellingPrice bende düşündümde discountedPrice var indirime giriyor fiyat sabit olsa.
  • 22-11-2019, 05:22:55
    #5
    discount u almaya calis yoksa selling i al hocam
  • 22-11-2019, 09:35:42
    #6
    Sayfa kaynak kodundaki JSON'u almanız yeterli hocam, içerisinde ürün ile ilgili tüm bilgi mevcut, bilginize.
  • 22-11-2019, 12:35:19
    #7
    asiminnesli adlı üyeden alıntı: mesajı görüntüle
    hocam buyur tam calisan kod boyle olmali
    <?php
    function siteAdresi($site)
    {
    $ch = curl_init();
    $hc = "YahooSeeker-Testing/v3.9 (compatible; Mozilla 4.0; MSIE 5.5; Yahoo! Search - Web Search)";
    curl_setopt($ch, CURLOPT_REFERER, 'http://www.google.com');
    curl_setopt($ch, CURLOPT_URL, $site);
    curl_setopt($ch, CURLOPT_USERAGENT, $hc);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $site = curl_exec($ch);
    curl_close($ch);
    return $site;
    }
    function search($start, $end, $string)
    {
    @preg_match_all('/' . preg_quote($start, '/') .
    '(.*?)'. preg_quote($end, '/').'/i', $string, $m);
    return @$m[1];
    }
    
    $veri= siteAdresi("https://www.trendyol.com/fox-shoes/siyah-kadin-cizme-e726203409-p-3597045?boutiqueId=372256&merchantId=107292");
    echo "Trendyol Fiyat: ".search('"sellingPrice":{"text":"','","',$veri)[0];
    ?>
    sebebine gelince senin yaptigin file_get_content dinamik uretilen ve o anda html content uretmeyin renderla calisan sitelerde calismaz sanriim dosya olarak istiyorsun datayi. Ama o data bir dosyadan gelmiyor. Surekli acik kaliyor dosyanin ucu.
    N11 de bu olmayabilir ama Trendyolda varmis.
    Ikinci olarak trendyol icerisinde json olarak sellingPrice adiyla bunu iceriyor zaten ordan cektim 1-2 deneme de yaptim aliyor fiyati
    Merhabalar,

    İlginiz için teşekkür ederim. Fakat kod çalışmıyor.



    Herkese çok teşekkür ederim. Fakat sorunu çözemedim. Yardımlarınızı rica ediyorum.
  • 22-11-2019, 13:01:10
    #8
    https://regex101.com/r/h8LB99/1 burada bir örnek gösterdim hocam. Referans alarak değiştirebilirsiniz

    Ayrıca JSON verisinden almak istiyorsanız https://regex101.com/r/f4hDqL/1 bunu kullanabilirsiniz