• 20-08-2022, 23:59:19
    #1
    Merhaba
    bir kaç siteden bot ile veri çekmem gerekiyor. fakat sayfalara sağ tıklayınca kaynak kod görün çıkmıyor. sayfayı kopyalayıp alınca kodları görüntüleyebiliyorum. Fakat kullandığım kod ile kaynak kodu alamıyorum galiba. Başka nasıl yapabilirim?

    $Baglan = Baglan("https://www.migros.com.tr/superfresh-patates-1-kg-p-1039160") ;
    preg_match_all('@<h3 class="text-color-black">(.*?)</h3>@si',$Baglan,$urunadix);
    normal sitenin kaynak kodunu al dediğimde ürün bilgileri vs listelenmiyor sadece aşağıdaki kod çıkıyor. ;

    <!DOCTYPE html>
    <html lang="en">
     <head>
        <meta charset="utf-8"/>
        <title>Migros Sanal Market: Online Market Alışverişi</title>
        <base href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/"]/[/URL]"/>
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5, user-scalable=0"/>
        <link rel="manifest" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/manifest.json"]manifest.json[/URL]"/>
        <link rel="icon" type="image/x-icon" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/favicon.ico"]/assets/favicon.ico[/URL]"/>
    
        <meta name="theme-color" content="#ff9933"/>
        <meta name="description" property="og:description" content="Geniş ürün yelpazesi, en uygun fiyatlı ürünleri ve aynı gün teslimat fırsatıyla online market alışverişinizde Migros Sanal Market size iyi gelecek!"/>
        <meta property="og:site_name" content="Migros Sanal Market: Online Market Alışverişi"/>
        <meta property="og:image" content="https://migros-dali-storage-prod.global.ssl.fastly.net/sanalmarket/custom/sanalmarket-seo-34706362.png"/>
    
        <link rel="apple-touch-icon" sizes="57x57" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-57x57.png"]/assets/images/seo/apple-touch-icon-57x57.png[/URL]"/>
        <link rel="apple-touch-icon" sizes="114x114" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-114x114.png"]/assets/images/seo/apple-touch-icon-114x114.png[/URL]"/>
        <link rel="apple-touch-icon" sizes="72x72" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-72x72.png"]/assets/images/seo/apple-touch-icon-72x72.png[/URL]"/>
        <link rel="apple-touch-icon" sizes="144x144" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-144x144.png"]/assets/images/seo/apple-touch-icon-144x144.png[/URL]"/>
        <link rel="apple-touch-icon" sizes="60x60" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-60x60.png"]/assets/images/seo/apple-touch-icon-60x60.png[/URL]"/>
        <link rel="apple-touch-icon" sizes="120x120" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-120x120.png"]/assets/images/seo/apple-touch-icon-120x120.png[/URL]"/>
        <link rel="apple-touch-icon" sizes="76x76" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-76x76.png"]/assets/images/seo/apple-touch-icon-76x76.png[/URL]"/>
        <link rel="apple-touch-icon" sizes="152x152" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-152x152.png"]/assets/images/seo/apple-touch-icon-152x152.png[/URL]"/>
        <link rel="apple-touch-icon" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon.png"]/assets/images/seo/apple-touch-icon.png[/URL]"/>
    
        <link rel="apple-touch-icon-precomposed" sizes="57x57" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-57x57-precomposed.png"]/assets/images/seo/apple-touch-icon-57x57-precomposed.png[/URL]"/>
        <link rel="apple-touch-icon-precomposed" sizes="114x114" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-114x114-precomposed.png"]/assets/images/seo/apple-touch-icon-114x114-precomposed.png[/URL]"/>
        <link rel="apple-touch-icon-precomposed" sizes="72x72" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-72x72-precomposed.png"]/assets/images/seo/apple-touch-icon-72x72-precomposed.png[/URL]"/>
        <link rel="apple-touch-icon-precomposed" sizes="144x144" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-144x144-precomposed.png"]/assets/images/seo/apple-touch-icon-144x144-precomposed.png[/URL]"/>
        <link rel="apple-touch-icon-precomposed" sizes="60x60" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-60x60-precomposed.png"]/assets/images/seo/apple-touch-icon-60x60-precomposed.png[/URL]"/>
        <link rel="apple-touch-icon-precomposed" sizes="120x120" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-120x120-precomposed.png"]/assets/images/seo/apple-touch-icon-120x120-precomposed.png[/URL]"/>
        <link rel="apple-touch-icon-precomposed" sizes="76x76" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-76x76-precomposed.png"]/assets/images/seo/apple-touch-icon-76x76-precomposed.png[/URL]"/>
        <link rel="apple-touch-icon-precomposed" sizes="152x152" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-152x152-precomposed.png"]/assets/images/seo/apple-touch-icon-152x152-precomposed.png[/URL]"/>
        <link rel="apple-touch-icon-precomposed" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/assets/images/seo/apple-touch-icon-precomposed.png"]/assets/images/seo/apple-touch-icon-precomposed.png[/URL]"/>
    
        <script src="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.googleoptimize.com/optimize.js?id=OPT-K4CCSKT"]https://www.googleoptimize.com/optimize.js?id=OPT-K4CCSKT[/URL]"></script>
    
        <!-- To make possible for marketing partners to capture utm tags -->
        <!-- For more info, check: [url]https://developers.google.com/web/updates/2020/07/referrer-policy-new-chrome-default[/url] -->
        <script async="" src="[URL="https://www.r10.net/view-source%3Ahttps%3A//cdn.segmentify.com/7a036bce-712d-4354-b5aa-2e74724eee62/segmentify.js"]//cdn.segmentify.com/7a036bce-712d-4354-b5aa-2e74724eee62/segmentify.js[/URL]" charset="UTF-8"></script>
        <meta name="referrer" content="no-referrer-when-downgrade"/>
        <script src="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/env.js"]env.js[/URL]"></script>
        <script async="" src="[URL="https://www.r10.net/view-source%3Ahttps%3A//securepubads.g.doubleclick.net/tag/js/gpt.js"]https://securepubads.g.doubleclick.net/tag/js/gpt.js[/URL]"></script>
     <link rel="stylesheet" href="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/styles.88596b7fc4b39d7a.css"]styles.88596b7fc4b39d7a.css[/URL]"></head>
     <body class="mat-typography">
        <sm-root></sm-root>
     <script src="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/runtime.818284c7c44256e5.js"]runtime.818284c7c44256e5.js[/URL]" type="module"></script><script src="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/polyfills.6f556efb93e242e2.js"]polyfills.6f556efb93e242e2.js[/URL]" type="module"></script><script src="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/scripts.eae4eb8d271eebe8.js"]scripts.eae4eb8d271eebe8.js[/URL]" defer></script><script src="[URL="https://www.r10.net/view-source%3Ahttps%3A//www.migros.com.tr/main.21386f0be1ea03e6.js"]main.21386f0be1ea03e6.js[/URL]" type="module"></script></body>
    </html>
  • 21-08-2022, 00:08:26
    #2
    PHP de bunu almanın yolu yöntemi yok. (bence)
    pythonda selenium kullanacaksın ve oradaki kodların oluşmasını sağlayacaksın ve o şekilde kaynak kodları çektireceksin.

    driver.page_source komutu ile.


    yok ben ne yapıp edip tırmalayıp bulacağım diyorsan da sayfaya sağ tıkla.
    Öğeyi denetle. de
    Network sekmesine geç.
    Sayfayı yenile.
    Gelen elemanları aç incele.

    ======

    Edit: Guzzle denen bir şey varmış PHP'de. Onunla yapılır diye yazıyor kaynaklarda.
  • 21-08-2022, 00:12:27
    #3
    php ile hangi verileri çekmek istiyorsun
  • 21-08-2022, 00:13:29
    #4
    ebubekirbastama adlı üyeden alıntı: mesajı görüntüle
    php ile hangi verileri çekmek istiyorsun
    sadece :ürün adı ve fiyat
  • 21-08-2022, 00:21:45
    #5
    geri dönüş isteği ile alamayabilirsin direk yüklemede vermiyor site çünkü başka yöntemlere bakmak lazım requestleri analiz etmen gerek istersen ufak bir ücrete destek olabilirim
  • 21-08-2022, 13:49:39
    #6
    hocam chromedan f12 açın. network sekmesine girin. anasayfadan itibaren istekleri inceleyin. her şey js ile çalıştığı için kaynak kodundan veri alamazsınız. selenium gerekmiyor bunun için. apileri incelemeniz gerekiyor sadece.