TanodTools
HI

यूज़र एजेंट पार्सर

यूज़र एजेंट स्ट्रिंग को ब्राउज़र, इंजन, ऑपरेटिंग सिस्टम, डिवाइस और CPU में तोड़ें, शुरुआत अपने ब्राउज़र की स्ट्रिंग से करें।

पूरी तरह आपके ब्राउज़र में चलता है

आपके ब्राउज़र के Client Hints

पार्सिंग ua-parser-js 1.0.41 (MIT) से होती है और पैटर्न पर आधारित है, इसलिए अजीब या नकली स्ट्रिंग गलत पढ़ी जा सकती हैं। Client Hints सिर्फ़ उसी ब्राउज़र के दिखते हैं जो आप अभी इस्तेमाल कर रहे हैं, और सिर्फ़ वहाँ जहाँ वह ब्राउज़र उन्हें सपोर्ट करता है (Chromium ब्राउज़र करते हैं; Firefox और Safari नहीं)।

यूज़र एजेंट स्ट्रिंग कैसे पढ़ें

  1. पेज लोड होते ही आपके अपने ब्राउज़र का यूज़र एजेंट पार्स हो जाता है। किसी और को जाँचने के लिए उसे बॉक्स में पेस्ट करें, जैसे सर्वर लॉग से।
  2. ब्राउज़र, इंजन, ऑपरेटिंग सिस्टम, डिवाइस और CPU की पंक्तियाँ पढ़ें। इन्हें वह मानें जो स्ट्रिंग दावा करती है, साबित तथ्य नहीं।
  3. अपने ब्राउज़र के लिए नतीजे की तुलना Client Hints सेक्शन से करें, जो वह ब्योरा दिखा सकता है जिसे छोटी की गई स्ट्रिंग छोड़ देती है।

यूज़र एजेंट क्या बताता है, और क्या छिपाता है

यूज़र एजेंट इसलिए शुरू हुआ था कि सर्वर देख सके कौन-सा ब्राउज़र माँग रहा है, ताकि वह ऐसा पेज भेज सके जो वहाँ चले। फिर अच्छे पेज पाने के लिए ब्राउज़रों ने एक-दूसरे के नाम नकल कर लिए, इसीलिए आज की Chrome स्ट्रिंग में Mozilla, AppleWebKit, KHTML, Gecko और Safari भी लिखा होता है। पार्सर इसे सँभालने के लिए पैटर्न को सावधानी से तय क्रम में जाँचता है और सबसे ख़ास मिलान चुनता है।

स्ट्रिंग को जानबूझकर छोटा भी किया जा रहा है। Chrome का User-Agent reduction Windows का वर्शन NT 10.0 पर, macOS का 10_15_7 पर, Android का मॉडल K पर और बिल्ड नंबर 0.0.0 पर जमा देता है, ताकि स्ट्रिंग अब अच्छा फ़िंगरप्रिंट न रहे। ब्योरा गायब नहीं हुआ है: जो पेज उसे Client Hints से माँगता है, उसे प्लेटफ़ॉर्म वर्शन, आर्किटेक्चर, मॉडल और पूरा ब्राउज़र वर्शन मिलता है, और जवाब देना है या नहीं, यह विज़िटर का ब्राउज़र तय करता है।

स्ट्रिंग का इस्तेमाल मोटे फ़ैसलों और लॉग के लिए करें, भरोसे के लिए नहीं। क्रॉलर और curl जैसे कमांड-लाइन टूल अपनी छोटी स्ट्रिंग भेजते हैं, और कुछ भी नकली हो सकता है। अगर आप लेआउट का बग खोज रहे हैं, तो ब्राउज़र का नाम पढ़ने से ज़्यादा भरोसेमंद है पेज में फ़ीचर डिटेक्शन।

सुझाव

  • किसी एक क्लाइंट को 403 या 429 के जवाबों से भरा सर्वर लॉग मिला? कोड HTTP स्टेटस कोड रेफ़रेंस में देखें।
  • URL या क्वेरी स्ट्रिंग में यूज़र एजेंट अक्सर परसेंट-एन्कोड होते हैं; उन्हें URL एन्कोड और डिकोड से डिकोड करें।
  • रिक्वेस्ट से कॉपी किए हेडर में कभी-कभी Base64 मान होते हैं; उन्हें Base64 एन्कोड और डिकोड से पढ़ें।

अक्सर पूछे जाने वाले सवाल

यूज़र एजेंट स्ट्रिंग क्या है?

यह टेक्स्ट की एक लाइन है जो ब्राउज़र या प्रोग्राम हर वेब रिक्वेस्ट के साथ भेजता है ताकि बता सके कि वह क्या है। दशकों की संगतता वाली तरकीबों की वजह से लगभग हर ब्राउज़र Mozilla/5.0 से शुरू होता है और कई दूसरे ब्राउज़रों का ज़िक्र करता है, इसलिए एक को पढ़ने के लिए सादे बँटवारे की जगह पैटर्न मिलान चाहिए।

Windows 11 Windows 10 क्यों दिखता है?

Chrome और दूसरे Chromium ब्राउज़र स्ट्रिंग का प्लेटफ़ॉर्म वाला हिस्सा "Windows NT 10.0" पर जमा देते हैं, चाहे Windows का असली वर्शन कुछ भी हो। सिर्फ़ Client Hints दोनों में फ़र्क बता सकते हैं: प्लेटफ़ॉर्म वर्शन 13 या उससे ऊपर का मतलब Windows 11 है। जब यह मान उपलब्ध होता है, तो यह पेज आपके अपने ब्राउज़र के लिए उसे दिखाता है।

मेरा iPad खुद को Mac क्यों बताता है?

iPadOS 13 से Safari डिफ़ॉल्ट रूप से डेस्कटॉप वेबसाइट माँगता है और Macintosh यूज़र एजेंट भेजता है। सिर्फ़ स्ट्रिंग से Mac और iPad अलग नहीं किए जा सकते, हालाँकि पेज टच स्क्रीन की जाँच कर सकता है। macOS पर भी यही लागू है: स्ट्रिंग में वर्शन 10_15_7 पर जमा हुआ है।

User-Agent reduction क्या है?

Chrome निष्क्रिय ट्रैकिंग घटाने के लिए स्ट्रिंग से ब्योरा हटा रहा है: माइनर वर्शन 0.0.0 दिखता है, Android डिवाइस का मॉडल एक अकेले अक्षर K के रूप में दिखता है, और OS का वर्शन तय है। जिन साइटों को ब्योरा चाहिए, उन्हें Client Hints से माँगना पड़ता है।

Client Hints क्या हैं?

ये संरचित हेडर और एक JavaScript API (navigator.userAgentData) हैं, जो पेज को स्ट्रिंग से पढ़ने की जगह आर्किटेक्चर या पूरा ब्राउज़र वर्शन जैसा ख़ास ब्योरा माँगने देते हैं। आज सिर्फ़ Chromium पर आधारित ब्राउज़र इन्हें सपोर्ट करते हैं।

क्या सुरक्षा के फ़ैसलों के लिए यूज़र एजेंट पर भरोसा कर सकते हैं?

नहीं। कोई भी कोई भी स्ट्रिंग भेज सकता है, और बॉट अक्सर Chrome होने का दिखावा करते हैं। आँकड़ों और लेआउट चुनने के लिए यह ठीक है, एक्सेस कंट्रोल के लिए नहीं। Googlebot को सत्यापित करने के लिए साइट इसकी जगह रिवर्स DNS लुकअप से विज़िटर का IP एड्रेस जाँचती है।