Ana içeriğe atla

Ayarlar

A-Parser aşağıdaki ayar gruplarını içerir:

  • Global Settings - programın temel ayarları: dil, şifre, güncelleme parametreleri, aktif görev sayısı
  • Config Presets - görevler için iş parçacığı ayarları ve deduplikasyon yöntemleri
  • Parser Presets - her bir veri kazıyıcıyı ayrı ayrı yapılandırma imkanı
  • Proxy kontrol ayarları - proxychecker için iş parçacığı sayısı ve tüm ayarlar
  • Advanced Settings - ileri düzey kullanıcılar için isteğe bağlı ayarlar
  • Task presets - görevlerin daha sonra kullanılmak üzere kaydedilmesi

Tüm ayarlar (genel ve ek ayarlar hariç) preset adı verilen önceden kaydedilmiş ayar setlerine kaydedilir, örneğin:

  • SE::GoogleSE::Google veri kazıyıcı için farklı ayar şablonları - biri 10 sayfa maksimum derinlikte bağlantı veri çekme için, diğeri ise sorgu bazlı rekabet değerlendirmesi için 1 sayfa veri çekme derinliği
  • Farklı proxychecker ayar presetleri - HTTP ve SOCKS proxyler için ayrı ayrı

Tüm ayarlar için bir varsayılan (default) preset mevcuttur, bu değiştirilemez; tüm değişiklikler yeni isimlerle presetlere kaydedilmelidir.

Genel ayarlar

Ayarlar -> Genel Ayarlar
Parametre adıVarsayılan değerAçıklama
PasswordŞifre yokA-Parser giriş için şifre belirleyin
LanguageEnglishArayüz dili
News & TipsEnglishHaberlerin ve ipuçlarının dili
Enable tipsİpuçlarının görüntülenip görüntülenmeyeceğini belirler
Check updatesYeni bir güncellemenin mevcut olup olmadığı bilgisinin Durum çubuğunda gösterilip gösterilmeyeceğini belirler
Save window sizePencere boyutunun kaydedilip kaydedilmeyeceğini belirler
Updates channelStableGüncelleme kanalı seçimi (Stabil, Beta, Alfa)
Tasks per page5Görev kuyruğundaki sayfa başına görev sayısı
Max active tasks1Maksimum aktif görev sayısı
Total threads limit10000A-Parser genel iş parçacığı limiti. Genel iş parçacığı limiti görevdeki iş parçacığı sayısından azsa görev başlamaz
Dynamic thread limitDinamik iş parçacığı limiti kullanılıp kullanılmayacağını belirler
CPU cores (task processing)2Görevlerin farklı işlemci çekirdeklerinde işlenmesi desteği (yalnızca Enterprise lisansı için). Aşağıda daha detaylı açıklanmıştır
CPU cores (result processing)4Birden fazla çekirdek yalnızca filtreleme, Sonuç Oluşturucu ve Parse custom result işlemlerinde kullanılır (tüm lisans türleri)
Memory SaverBest speedVeri kazıyıcının ne kadar bellek kullanabileceğini belirlemenizi sağlar (Best speed / Medium memory usage / Save max memory). Daha fazla bilgi...

CPU çekirdeği (görev işleme)

Görevlerin farklı işlemci çekirdeklerinde işlenmesi desteği, bu özellik yalnızca Enterprise lisansı için mevcuttur.

Bu seçenek, kuyruktaki birden fazla görevin işlenmesini (defalarca) hızlandırır (Settings -> Max active tasks), ancak tek bir görevin yürütülmesini hızlandırmaz.

Ayrıca, her bir işlemin CPU yüküne bağlı olarak görevlerin iş çekirdeklerine akıllıca dağıtılması uygulanmıştır. Kullanılan işlemci çekirdeği sayısı ayarlarda belirlenir, varsayılan - 2, maksimum - 32'dir.

İş parçacıklarında olduğu gibi, çekirdek sayısı seçimine deneysel olarak yaklaşmak en iyisidir; 4 çekirdekli işlemciler için 2-3 çekirdek, 8 çekirdekli işlemciler için 4-6 çekirdek vb. makul değerlerdir. Çok sayıda çekirdek ve yüksek yüklenme durumunda, ana kontrol işleminde (aparser/aparser.exe) %100 yüklenme oluşabileceği ve bu durumun görev işleme süreçlerinin daha fazla artırılmasının yalnızca genel bir yavaşlamaya veya kararsız çalışmaya neden olacağı unutulmamalıdır. Ayrıca, her bir görev işleme sürecinin %300'e kadar ek yük oluşturabileceği (yani aynı anda 3 çekirdeği %100 yükleyebileceği) unutulmamalıdır; bu özellik JavaScript v8 motorundaki çok iş parçacıklı çöp toplama (garbage collection) işlemiyle ilgilidir.

İş parçacığı ayarları

A-Parser'ın çalışması çoklu iş parçacığı veri işleme prensibine dayanır. Veri kazıyıcı, görevleri paralel olarak ayrı iş parçacıklarında yürütür ve bunların sayısı sunucu yapılandırmasına bağlı olarak esnek bir şekilde değiştirilebilir.

İş parçacıklarının çalışma açıklaması

İş parçacıklarının pratikte ne olduğunu anlayalım. Diyelim ki üç aylık bir rapor hazırlamanız gerekiyor.

Seçenek 1
Raporu önce 1. ay için, sonra 2. ay için ve ardından 3. ay için hazırlayabilirsiniz. Bu, tek iş parçacıklı çalışmaya bir örnektir. Görevler sırayla çözülür.

Seçenek 2
Her biri birer aylık rapor hazırlayacak üç muhasebeci tutun. Ardından üçünden sonuçları aldığınızda genel bir rapor oluşturun. Bu, çoklu iş parçacığı çalışmasına bir örnektir. Görevler aynı anda çözülür.

Bu örneklerden görülebileceği gibi, çoklu iş parçacığı çalışması görevi daha hızlı tamamlamayı sağlar, ancak aynı zamanda daha fazla kaynak gerektirir (1 yerine 3 muhasebeciye ihtiyacımız var). Çoklu iş parçacığı A-Parser da benzer şekilde çalışır. Diyelim ki birkaç bağlantıdan bilgi çekmeniz gerekiyor:

  • tek iş parçacığında uygulama her siteyi sırayla kazıyacaktır
  • çoklu iş parçacığında her biri kendi bağlantısını işleyecek, bitirdiğinde listedeki bir sonraki işlenmemiş bağlantıya geçecektir

Böylece ikinci seçenekte tüm görev önemli ölçüde daha hızlı tamamlanacaktır, ancak bu daha fazla sunucu kaynağı gerektirir, bu nedenle Sistem gereksinimlerine uyulması önerilir

İş parçacığı ayarları

A-Veri Kazıyıcı'da iş parçacığı ayarları, bir görevin yerine getirilmesi için gereken parametrelere bağlı olarak her görev için ayrı ayrı yapılır. Varsayılan olarak 2 iş parçacığı yapılandırması mevcuttur: 20 ve 100 iş parçacığı, sırasıyla default ve 100 Threads için.

Seçilen yapılandırmanın ayarlarına girmek için kalem simgesine iş parçacığı yapılandırmasını düzenle butonu tıklamanız gerekir, ardından ayarları açılacaktır. Görev Düzenleyicide İş Parçacığı Konfigürasyonunu Düzenle Butonu

Ayrıca iş parçacığı ayarlarına şu menü öğesinden de gidilebilir: Settings -> Config Presets

Burada şunları yapabiliriz:

  • kendi ayarlarımızla yeni bir yapılandırma oluşturup kendi adıyla kaydedebiliriz (Yeni ekle butonu)
  • açılır listeden seçerek mevcut bir yapılandırmada değişiklik yapabiliriz (Kaydet butonu)
İş Parçacığı Konfigürasyonu Ayarları

İş parçacığı sayısı (Threads count)

Bu parametre, bu yapılandırma ile başlatılan görevin çalışacağı iş parçacığı sayısını belirler. İş parçacığı sayısı herhangi bir değer olabilir, ancak sunucunuzun kapasitesini ve eğer varsa proxy tarifesi kısıtlamasını göz önünde bulundurmalısınız. Örneğin, bizim proxylerimiz için seçilen tarifeden fazlasını belirtemezsiniz.

not

Ayrıca, veri kazıyıcıdaki toplam iş parçacığı sayısının, çalışan görevlerin ve proxy kontrolü açık olan proxy denetleyicilerin toplamına eşit olduğunu unutmamak önemlidir. Örneğin, 20 iş parçacıklı bir görev ve her biri 100 iş parçacıklı iki görev çalışıyorsa ve ayrıca 15 iş parçacığında proxy kontrolü yapan bir proxy denetleyici çalışıyorsa, veri kazıyıcı toplamda 20+100+100+15=235 iş parçacığı kullanacaktır. Bu durumda, proxy tarifesi 200 iş parçacığı için tasarlanmışsa, birçok başarısız istek olacaktır. Bunlardan kaçınmak için kullanılan iş parçacığı sayısını düşürmeniz gerekir. Örneğin, proxy kontrolünü kapatmak (ihtiyaç yoksa bu 15 iş parçacığı tasarruf sağlar) ve görevlerden birindeki iş parçacığı sayısını 20 daha düşürmek. Böylece çalışan görevlerden biri için 80 iş parçacıklı bir yapılandırma oluşturmalı, diğerlerini olduğu gibi bırakmalısınız

Proxy Denetleyiciler (Proxy Checkers)

Bu parametre, belirli ayarlara sahip bir proxy denetleyici seçme imkanı verir. Burada, çalışan tüm proxy denetleyicilerin kullanılacağı anlamına gelen All parametresini veya yalnızca görevde kullanılması gerekenleri seçebilirsiniz (birden fazla seçim yapılabilir)

not

Bu ayar, görevin yalnızca gerekli proxy denetleyicilerle başlatılmasını sağlar. Proxy denetleyici yapılandırma süreci burada incelenmiştir

Proxy başına maksimum iş parçacığı (Max threads per proxy)

Burada, aynı proxynin aynı anda kullanılacağı maksimum iş parçacığı sayısı belirlenir. 1 iş parçacığı = 1 proxy gibi farklı parametreler belirlemeye olanak tanır.

not

Varsayılan olarak bu parametre 0'dır ve bu özelliği devre dışı bırakır. Çoğu durumda bu yeterlidir. Ancak her proxy üzerindeki yükü sınırlamak gerekiyorsa, değeri değiştirmek mantıklıdır

Global proxy engeli (Global proxy ban)

Bu seçenekle başlatılan tüm görevler ortak bir proxy engel veritabanına sahiptir. Bu parametrenin özelliği, her veri kazıyıcı için engellenen proxy listesinin çalışan tüm görevler için ortak olmasıdır.

Örneğin, Görev 1'de SE::GoogleSE::Google için engellenen bir proxy, Görev 2'deki SE::GoogleSE::Google için de engellenecektir, ancak aynı zamanda her iki görevde de SE::YandexSE::Yandex içinde serbestçe çalışabilir

Host başına maksimum bağlantı (Max connections per host)

Bu parametre, bir hosta yapılacak maksimum bağlantı sayısını belirtir ve veri çekme sırasında site üzerindeki yükü azaltmak için tasarlanmıştır. Aslında bu parametrenin belirtilmesi, her bir spesifik alan adı için aynı andaki istek sayısını kontrol etme imkanı verir. Bu parametrenin etkinleştirilmesi göreve yayılır; aynı iş parçacığı yapılandırmasıyla aynı anda birkaç görev başlatılırsa, limit tüm görevler için hesaplanacaktır.

Varsayılan olarak bu parametre 0 değerine sahiptir, yani devre dışıdır.

Denemeler arasında proxy'nin yeniden kullanımı (Reuse proxy between retries)

Bu ayar, her deneme için proxy benzersizliği kontrolünü devre dışı bırakır ve ayrıca proxy engelleme çalışmaz. Bu da tüm denemeler için 1 proxy kullanma imkanı anlamına gelir.

Bu parametrenin, örneğin her bağlantıda çıkış IP'sinin değiştiği 1 proxy kullanılması planlandığı durumlarda etkinleştirilmesi önerilir.

Proxy kullanım stratejisi (Proxy strategy)

Oturumları kullanırken proxy seçim stratejisini yönetmeye olanak tanır: başarılı bir istekten gelen proxy'yi bir sonraki istek için saklamak veya her zaman rastgele bir proxy kullanmak.

Öneriler

Bu makalede, iş parçacıklarını yönetmeyi sağlayan tüm ayarlar incelenmiştir. İş parçacığı yapılandırması ayarlarında makalede belirtilen tüm parametreleri belirlemenin zorunlu olmadığını, yalnızca doğru sonucu sağlayacak olanları belirlemenin yeterli olduğunu belirtmek gerekir. Genellikle sadece Threads count değerini değiştirmek gerekir, diğer ayarlar varsayılan olarak bırakılabilir.

Veri kazıyıcı ayarları

Her veri kazıyıcı birçok ayara sahiptir ve farklı ayar kümelerini şablonlara kaydetmeye olanak tanır. Şablon sistemi, duruma göre aynı veri kazıyıcıyı farklı ayarlarla kullanmaya olanak tanır, SE::GoogleSE::Google veri kazıyıcı örneği üzerinden inceleyelim:

  • Sayfa sayısı (Pages count): 10

Böylece veri kazıyıcı, arama sonuçlarının tüm sayfalarını gezerek maksimum sayıda bağlantı toplayacaktır

Şablon 2: "Sorgu bazlı rekabet veri çekme"

  • Sayfa sayısı (Pages count): 1
  • Sonuç formatı (Results format): $query: $totalcount\n

Bu durumda sorgu başına sonuç sayısını (sorgu rekabeti) alıyoruz ve daha yüksek hız için sadece ilk sayfayı kazımamız yeterlidir

Şablon oluşturma

Preset oluşturma

Şablon oluşturma, veri kazıyıcı/kazıyıcıların seçilmesi ve alınması gereken sonucun belirlenmesiyle başlar.

Ardından seçilen veri kazıyıcı için giriş verilerinin ne olacağını anlamak gerekir; yukarıdaki ekran görüntüsünde SE::GoogleSE::Google veri kazıyıcı seçilmiştir, onun giriş verileri tarayıcıda bir şey arıyormuşsunuz gibi herhangi bir satırdır. Bir sorgu dosyası seçebilir veya metin alanına sorguları girebilirsiniz.

Şimdi veri kazıyıcı için ayarları yeniden tanımlamanız (seçenekleri belirlemeniz), deduplikasyon ekle işlemini yapmanız gerekir. Sorguları işlemeniz gerekiyorsa sorgu oluşturucu kullanabilirsiniz. Veya sonuçları bir şekilde işlemeniz gerekiyorsa sonuç oluşturucu kullanabilirsiniz.

Daha sonra sonuç dosyası adının düzenlenmesine dikkat etmeli ve gerekirse kendi isteğinize göre değiştirmelisiniz.

Son madde, ek seçeneklerin seçilmesidir, özellikle Do log (Günlük tut) seçeneği. Veri çekme hatasının nedenini öğrenmek istiyorsanız çok yararlıdır.

Tüm bunlardan sonra şablonu kaydetmeli ve görev kuyruğuna eklemelisiniz.

Ayarları yeniden tanımlama

Override preset - veri kazıyıcı için ayarların hızlıca yeniden tanımlanmasıdır, bu seçenek doğrudan Görev Düzenleyici içinde eklenebilir. Tek bir tıklama ile birkaç parametre eklenebilir. Ayar listesinde varsayılan değerler belirtilmiştir ve bir seçenek kalın harflerle vurgulanmışsa, bu onun şablonda zaten yeniden tanımlandığı anlamına gelir

Veri kazıyıcı için ayarları geçersiz kılma

Bu örnekte Pages count (Sayfa sayısı) seçeneği geçersiz kılınmış ve 5 olarak ayarlanmıştır.

Bir görevde sınırsız sayıda Override preset seçeneği kullanılabilir, ancak değişiklikler çoksa, yeni bir şablon oluşturup tüm değişiklikleri ona kaydetmek daha uygundur.

Ayrıca yeniden tanımlamaları Save overrides to preset (Yeniden tanımlamaları kaydet) fonksiyonu ile kolayca kaydedebilirsiniz. Bunlar seçilen veri kazıyıcı için ayrı bir şablon olarak kaydedilecektir.

Geçersiz kılınan seçenekleri kaydetme

Bundan sonra gelecekte bu kaydedilmiş şablonu listeden seçip kullanmak yeterli olacaktır.

Belirli bir veri kazıyıcı için kaydedilmiş preseti seçme

Tüm veri kazıyıcılar için ortak ayarlar

Her veri kazıyıcının kendi ayar kümesi vardır, her veri kazıyıcının ayarları hakkındaki bilgiyi ilgili bölümde bulabilirsiniz

Bu tabloda tüm veri kazıyıcılar için ortak ayarları sunduk

Parametre adıVarsayılan değerAçıklama
Request retries10Her bir istek için deneme sayısı; eğer istek belirtilen deneme sayısında gerçekleştirilemezse başarısız sayılır ve atlanır
Use proxyProxy kullanılıp kullanılmayacağını belirler
Query format$querySorgu formatı
Result formatHer veri kazıyıcının kendi değeri vardırSonuç çıktı formatı
Proxy ban timeHer veri kazıyıcının kendi değeri vardırSaniye cinsinden proxy ban süresi
Request timeout60Saniye cinsinden maksimum istek bekleme süresi
Request delay0İstekler arasındaki saniye cinsinden gecikme; bir aralıkta rastgele bir değer belirlenebilir, örneğin 10,30 - 10 ile 30 saniye arası gecikme
Proxy CheckerAllHangi checker'lardan gelen proxylerin kullanılacağı (tümü arasında seçim veya belirli olanların listelenmesi)

HTTP protokolü üzerinden çalışan tüm veri kazıyıcılar için ortak

Parametre adıVarsayılan değerAçıklama
Max body sizeHer veri kazıyıcının kendi değeri vardırBayt cinsinden maksimum sonuç sayfası boyutu
Use gzipİletilen trafiğin sıkıştırılıp sıkıştırılmayacağını belirler
Extra query stringSorgu dizesine ek parametreler eklenmesine olanak tanır
not

Her veri kazıyıcı için varsayılan ayarlar farklılık gösterebilir. Bunlar her veri kazıyıcının ayarlarındaki default şablonunda saklanır.

Proxy denetleyici ayarları

Proxychecker ayarları hakkında daha fazla bilgi

Ek ayarlar

Ek ayarlar
  • Satır sonu, sonuçları bir dosyaya kaydederken satır sonları için Unix ve Windows seçenekleri arasında seçim yapmanıza olanak tanır
  • Sayı formatı - sayıların A-Parser arayüzünde nasıl görüntüleneceğini belirler
  • Şablon makroları