• 14-03-2023, 17:29:40
    #1
    Eğer https bağlantılarına sorunsuzca bağlanmak istiyorsanız aşağıdaki pem dosyasını indirin ve php dosyasının yanına koyun.

    indirme linki: https://gofile.io/d/xe0Qfy

    Ve CURL'deki ayarlara aşağıdaki kısımları ekleyin.

    CURLOPT_CAINFO => dirname(__FILE__).'/https.pem',
    CURLOPT_SSL_VERIFYPEER => true
    Genelde bunu bilmeyip direk CURLOPT_SSL_VERIFYPEER false yaparak iş çözülmeye çalışılır. Sayfa https'yi şart koşuyorsa da giriş yapılamaz. Yukarıda anlattığım şekilde https sayfalarını sorunsuzca görüntüleyebilirsiniz.

    Kolay gelsin.
    • Ferecbilisim
    Ferecbilisim bunu beğendi.
    1 kişi bunu beğendi.
  • 14-03-2023, 17:47:36
    #2
    Misafir adlı üyeden alıntı: mesajı görüntüle
    Eğer https bağlantılarına sorunsuzca bağlanmak istiyorsanız aşağıdaki pem dosyasını indirin ve php dosyasının yanına koyun.

    indirme linki: https://gofile.io/d/xe0Qfy

    Ve CURL'deki ayarlara aşağıdaki kısımları ekleyin.

    CURLOPT_CAINFO => dirname(__FILE__).'/https.pem',
    CURLOPT_SSL_VERIFYPEER => true
    Genelde bunu bilmeyip direk CURLOPT_SSL_VERIFYPEER false yaparak iş çözülmeye çalışılır. Sayfa https'yi şart koşuyorsa da giriş yapılamaz. Yukarıda anlattığım şekilde https sayfalarını sorunsuzca görüntüleyebilirsiniz.

    Kolay gelsin.
    Bu bilgi için teşekkürler acaba cloudflare olan sitelerde sorun çıkarıyor mu? Pm'den denemek için bi site adresi atabilirim.
  • 14-03-2023, 17:51:56
    #3
    erdem21 adlı üyeden alıntı: mesajı görüntüle
    Bu bilgi için teşekkürler acaba cloudflare olan sitelerde sorun çıkarıyor mu? Pm'den denemek için bi site adresi atabilirim.
    Hocam bu https bağlantısını yapabilmeniz için kullanışlı. Cloudflare botlara karşı önlemler aldığından dolayı muhtemelen sorun yaşarsınız. Bunu seleniumla falan bot programlasanız dahi yaşarsınız, sadece CURL'de değil. Farklı teknikler ile çözümler üreterek aşmak tabii ki mümkün. O site özelinde değerlendirmek lazım.

    https.pem dosyasını indirin ve aşağıdaki dosyayı php olarak kaydedip https.pem dosyasını yanına koyarak çalıştırın. Bir deneyin.

    $curl = curl_init();
    curl_setopt_array($curl, [
    CURLOPT_URL => 'SİTE LİNKİNİ BURAYA YAZIN',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_ENCODING => "",
    CURLOPT_CAINFO => dirname(__FILE__).'/https.pem',
    CURLOPT_SSL_VERIFYPEER => true,
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 5,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_HTTPHEADER => [
    "user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/110.0"
    ],
    ]);
    
    $response = curl_exec($curl);
    
    echo $response;
  • 14-03-2023, 17:54:24
    #4
    Misafir adlı üyeden alıntı: mesajı görüntüle
    Hocam bu https bağlantısını yapabilmeniz için kullanışlı. Cloudflare botlara karşı önlemler aldığından dolayı muhtemelen sorun yaşarsınız. Bunu seleniumla falan bot programlasanız dahi yaşarsınız, sadece CURL'de değil. Farklı teknikler ile çözümler üreterek aşmak tabii ki mümkün. O site özelinde değerlendirmek lazım.

    https.pem dosyasını indirin ve aşağıdaki dosyayı php olarak kaydedip https.pem dosyasını yanına koyarak çalıştırın. Bir deneyin.

    $curl = curl_init();
    curl_setopt_array($curl, [
    CURLOPT_URL => 'SİTE LİNKİNİ BURAYA YAZIN',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_ENCODING => "",
    CURLOPT_CAINFO => dirname(__FILE__).'/https.pem',
    CURLOPT_SSL_VERIFYPEER => true,
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 5,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_HTTPHEADER => [
    "user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/110.0"
    ],
    ]);
    
    $response = curl_exec($curl);
    
    echo $response;
    Selenium ile mümkün doğrudur ama bunu curl ile yapmak daha kullanışlı olurdu bana bende pcye geçince test ederim inş teşekkür ederim tekrardan
  • 14-03-2023, 17:59:38
    #5
    erdem21 adlı üyeden alıntı: mesajı görüntüle
    Selenium ile mümkün doğrudur ama bunu curl ile yapmak daha kullanışlı olurdu bana bende pcye geçince test ederim inş teşekkür ederim tekrardan
    Hocam şu mevzuya açıklık getireyim son olarak. "Cloudflare kullanan hiçbir siteye giriş yapılamaz" demiyorum. Sitedeki cloudflare ayarlarına bağlı. Örneğin dün Cloudflare kullanan bir sitedeki istediğim onbinlerce içeriği aldım. Bir sorun yaşamadım. Ama girişte 5 saniye bot kontrolü falan yapılacak şekilde ayarlı ise sorun yaşanabilir. Dediğim gibi o site özelinde incelemek lazım. Direk de girebilrisiniz, CURL ile farklı parametreler eklemek de gerekebilir. Belki CURL ile girmek mümkün dahi olmayabilir.
    • erdem21
    erdem21 bunu beğendi.
    1 kişi bunu beğendi.
  • 17-03-2023, 13:17:43
    #6
    Merhaba bir de şöyle yapabilirsiniz:
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  • 17-03-2023, 13:53:07
    #7
    phpc adlı üyeden alıntı: mesajı görüntüle
    Merhaba bir de şöyle yapabilirsiniz:
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    Mesajımda zaten bunu belirttim hocam. Böyle yapınca sayfaya http olarak bağlanır. Https zorunluluğu olan sayfalara girmez. Benim bildiğim böyle en azından.
  • 17-03-2023, 13:54:48
    #8
    Misafir adlı üyeden alıntı: mesajı görüntüle
    Mesajımda zaten bunu belirttim hocam. Böyle yapınca sayfaya http olarak bağlanır. Https zorunluluğu olan sayfalara girmez. Benim bildiğim böyle en azından.
    Görür hocam. Bu ssl doğrulaması yapma demek oluyor. Amaç buysa bu daha kolay. İsterseniz full kod vereyim deneyin.
  • 17-03-2023, 14:01:30
    #9
    phpc adlı üyeden alıntı: mesajı görüntüle
    Görür hocam. Bu ssl doğrulaması yapma demek oluyor. Amaç buysa bu daha kolay. İsterseniz full kod vereyim deneyin.
    Yok hocam denememe gerek yok. İsteyenler öyle devam etsinler o zaman. Teşekkürler.