• 18-09-2010, 19:56:09
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba arkadaşlar,
    Bot yazdım kendim için boş zamanımda. Ama şöyle bir sorunum var. Atıyorum hedef sitede 10K içerik var ben bunların 5K sını çektikten sonra bot kendiliğinden duruyor ve çok yavaş içeriği çekip sql e giriyor. Bu sorunu nasıl çözebilirim? Hem hızlı hemde tüm verileri çekene kadar durmamasını nasıl sağlarım?
  • 18-09-2010, 20:01:27
    #2
    set_time_limit(0); işine yarayabilir
  • 18-09-2010, 20:47:41
    #3
    Bunu kullanmıştım zaten ama işe yaramadı hocam.
  • 19-09-2010, 12:24:28
    #4
    çektiğin kadar veriyi txt e falan kaydet sonra örneğin 10k nın 2 k sı bittiğimi txt okusun ve
    ?basla=2000 gibi bir yönlendirme yapsın.
  • 19-09-2010, 12:41:11
    #5
    php ayarlarındandır sorun.


    php.ini yi aç :

    max_execution_time = 1000
    saniye cinsinden.

    -----------------------
    php fonksiyonu olan SAFE MOD OFF olmalı
    set_time_limit(0);
    max_execution_time(0);

    SQL hakkında ise. her bir alınan içeriği SQL e kaydetme hemen
    icerik.sql içine sorgunu yazdır. bütün içerikler alınınca tek seferde gir dosyadan okutup gir derim böylece kesintilerin daha az olur

    eğer file_get_contents kullanıyorsan yerine cURL kullan derim.
  • 20-09-2010, 02:07:43
    #6
    Başka ne yapabilirim arkadaşlar?
  • 20-09-2010, 11:18:09
    #7
    Üyeliği durduruldu
    parcalara bölerek parca parca cektirin. bunun içiin ajax yada paremetrik sayfa refresh kullanin
  • 20-09-2010, 21:53:17
    #8
    Bahsettiğiniz konu hakkında bilgim yok daha detayları açıklayabilir misiniz?
  • 01-06-2013, 16:54:33
    #9
    benzer sorunları yaşayanlar için;

    php.ini > max_execution_time limitini arttırın (saniye cinsinden)

    içeriği curl ile çekin, daha hızlı olur.

    dosyanın başına set_time_limit(0); yazın, limitsiz olur.

    son olarak en önemlisi, mysql hatası alırsanız da dosya çalışmayı kesecektir. bunun için mysqle verileri yazdırırken her bir veri için sleep(1) fonksiyonu ile 1 saniye zaman girin, her sayfa için ise (bağlanılan sayfa) sleep(10) fonksiyonu ile 10 saniye zaman girin, böylece tüm veriler çekilecektir..