User-Agent dizesi nasıl ayrıştırılır?
User-Agent dizesini giriş alanına sağlayıp ayrıştırmayı başlattığınızda, desteklenen kalıplara göre tarayıcı, işletim sistemi, motor ve cihaz sınıflandırmalarını görebilirsiniz. Boş giriş sınıflandırılmaz; bunun yerine hata göstergesi ve örnek User-Agent içeren bir yanıt görüntülenir.
User-Agent dizesini tanımak
User-Agent dizesi, bir istemci yazılımına ait tarayıcı, işletim sistemi, oluşturma motoru ve cihaz göstergelerini birlikte taşıyabilir. User Agent Parser, sağladığınız metni desteklenen eşleştirme kurallarına göre okuyarak bu göstergeleri ayrı sınıflandırmalara dönüştürür. Böylece bir istek kaydındaki tarayıcı adını, sürüm bilgisini, işletim sistemi eşleşmesini, motor sonucunu ve cihaz türünü aynı incelemede değerlendirebilirsiniz.
Bu araç, analiz edilecek User-Agent metnini sizin sağlamanızı gerektirir. Metin desteklenen bir kalıpla eşleştiğinde ilgili sınıflandırma görüntülenir; uygun eşleşme bulunmayan tarayıcı, sürüm, işletim sistemi veya motor sonuçlarında Unknown görülebilir. Sonucu okurken dizede bulunan göstergeler ile aracın bu göstergelerden oluşturduğu sınıflandırmayı birbirinden ayırın. Bir metinde birden fazla tarayıcı ya da cihaz göstergesi varsa uygulanan sıra da önem kazanır.
Özellikle tarayıcı adını sürüm bilgisiyle, işletim sistemi sonucunu cihaz sınıfıyla birlikte inceleyin. Bu yaklaşım, yalnızca tek bir kelimeye bakarak sonuç hakkında fazla kapsamlı bir çıkarım yapmanızı önler.
Metni ayrıştırma ve sonuçları görme
-
Bir tarayıcıdan, istek günlüğünden veya başka bir kaynaktan incelemek istediğiniz User-Agent metnini kopyalayın. Dizeyi değiştirmeden kullanmanız, tarayıcı, işletim sistemi ve cihaz göstergelerinin birlikte değerlendirilmesine yardımcı olur.
-
Kopyaladığınız metni User-Agent giriş alanına yapıştırın. Giriş isteğe bağlıdır; alanı boş bırakırsanız sınıflandırma yapılmaz. Bunun yerine hata göstergesiyle birlikte örnek bir User-Agent değeri içeren yanıt alırsınız.
-
Ayrıştırmayı başlatan kontrolü seçin ve görüntülenen sınıflandırmaları inceleyin. Metin uygun bir kalıpla eşleştiğinde tarayıcı, noktalı tarayıcı sürümü, işletim sistemi, işletim sistemi sürümü, oluşturma motoru ve cihaz türü raporlanabilir.
-
Chrome veya Firefox sonucu gördüğünüzde sürüm bilgisini ayrıca kontrol edin. Tanınabilir Chrome ve Firefox dizelerinde ilgili ad sınıflandırılır; metinde uygun noktalı sürüm varsa bu sürüm de çıkarılır. Windows, macOS, Android, iOS ve Linux göstergeleri işletim sistemi sınıflandırmasına katkı sağlayabilir ve bazı sürüm biçimleri normalleştirilebilir.
-
Motor sonucunu inceleyin. Uygun sürüm kalıbıyla birlikte AppleWebKit metni WebKit, Gecko metni ise Gecko motor sınıflandırmasına yol açabilir.
-
Cihaz sınıfını ve göstergelerini birlikte değerlendirin. Başlangıçtaki Desktop değeri; Mobile, Android.*Mobile, iPad, Tablet, bot, crawler veya spider metinlerine ilişkin sıralı kontrollerle değişebilir. Son sınıflandırma Mobile ise mobil göstergesi true, Bot/Crawler ise bot göstergesi true olur.
-
İnceleme sırasında kullandığınız User-Agent dizesini not edin. Başka bir dize gönderildiğinde tarayıcı, sürüm, işletim sistemi, motor veya cihaz sonuçlarının değişmesi mümkündür.
Sınıflandırma sonuçlarını değerlendirmek
Görüntülenen sonucu, sağlanan metindeki tanınmış göstergelerin sınıflandırması olarak okuyun. Örneğin Chrome veya Windows görülmesi, ilgili metin kalıbının tanındığını anlatır; bu adlar tek başına istemci hakkında desteklenmeyen ek bilgiler sağlamaz. Dolu bir sürüm sonucu, metinde uygun sürüm biçiminin bulunduğunu gösterir.
Tarayıcı sınıfını yorumlarken eşleşme sırasını dikkate alın. Chrome/ ifadesi, Chromium, Edg/ ve OPR/ göstergeleri dışlanarak değerlendirilir. Firefox/ kontrolünde Seamonkey dışlanır. Safari, Chrome bulunmadan Safari/ ifadesiyle tanınır; daha sonraki kontroller Edg/, OPR/ veya Opera göstergelerini değerlendirebilir. Bu nedenle birden fazla tarayıcı ifadesi içeren dizede yalnızca ilk görünen adı temel almayın.
Cihaz sonucunu işletim sistemi sonucundan ayrı okuyun. Android veya iPhone erken aşamada Mobile yönünde değer oluşturabilir; sonraki Mobile, Android.*Mobile, iPad, Tablet ya da bot göstergeleri nihai sınıfı değiştirebilir. Mobile ve Bot/Crawler göstergelerini işletim sistemi adından otomatik olarak çıkarmayın.
Unknown gördüğünüzde, ilgili alanı dolduran desteklenmiş bir eşleşmenin bulunmadığını düşünün. Bu değer, altta yatan kimliğin kesinlikle mevcut olmadığını kanıtlamaz; tanınmayan biçimleri doğruluk, standartlara uygunluk veya eksiksizlik sonucu olarak değerlendirmeyin.
Uygulamalı örnek
Bir istek günlüğündeki Chrome ve Windows göstergelerini sınıflandırmak isteyen bir geliştirici, ilgili User-Agent metnini giriş alanına yapıştırır.
Chrome/120.0.0.0 ve Windows NT 10.0 göstergelerini içeren User-Agent metnini giriş alanına yapıştırın ve ayrıştırmayı başlatan kontrolü seçin; ardından tarayıcı, sürüm, işletim sistemi ve cihaz sonuçlarını karşılaştırın. Bu metinde Mobile, iPad, Tablet, bot, crawler veya spider göstergesi bulunmadığı varsayılır.
Chrome/120.0.0.0 ve Windows NT 10.0 göstergelerini taşıyan metin için sonuç biçiminde tarayıcı Chrome, tarayıcı sürümü 120.0.0.0, işletim sistemi Windows ve cihaz Desktop görülebilir; uygun eşleşme bulunmayan diğer sonuçlar Unknown olabilir.
Sınırlamalar
- Çıktı, desteklenen User-Agent metin kalıplarıyla sınırlıdır; tanınmayan biçimler Unknown oluşturabilir ve birden fazla gösterge bulunduğunda tarayıcı veya cihaz için eşleşme sırası nihai sınıfı etkileyebilir.
Sık yapılan hatalar
- Hata: User-Agent girişini boş bırakıp sınıflandırma beklemek. Düzeltme: İncelenecek metni giriş alanına ekleyin; boş değer, sınıflandırma yerine hata göstergesi ve örnek User-Agent içeren yanıt oluşturur.
Sık sorulan sorular
User-Agent alanı boş bırakılırsa ne olur?
Alan boş bırakıldığında araç sınıflandırma yapmaz; hata göstergesiyle birlikte örnek bir User-Agent değeri içeren yanıt verir. İnceleme yapabilmek için metni giriş alanına eklemeniz gerekir ve boş değer geçerli bir sınıflandırma sayılmaz.
Araç Chrome ve Firefox sürümünü tanıyabilir mi?
Tanınırlığı desteklenen Chrome ve Firefox dizelerinde tarayıcı adı sınıflandırılabilir; metinde uygun noktalı sürüm bulunuyorsa sürüm de çıkarılır. Chromium, Edg/, OPR/ ve Seamonkey göstergeleri, sıralı tarayıcı kontrollerinin sonucunu etkileyebilir.
Mobil ve bot göstergeleri nasıl belirlenir?
Mobil göstergesi yalnızca nihai cihaz sınıfı Mobile olduğunda true olur; bot göstergesi ise son sınıf Bot/Crawler olduğunda true değerini alır. Android, iPhone, Mobile, iPad, Tablet ve botla ilgili metinler sıralı cihaz kontrollerinde rol oynayabilir.