क्या अजगर में एक उपयोगकर्ता-एजेंट स्ट्रिंग मज़बूती सेपार्सिंग HTTP उपयोगकर्ता-एजेंट स्ट्रिंग
- ब्राउज़र
- ब्राउज़र संस्करण
- ओएस
या शायद पता लगाने के लिए पार्स करने के लिए सबसे अच्छा तरीका है कोई सहायक लाइब्रेरी जो
क्या अजगर में एक उपयोगकर्ता-एजेंट स्ट्रिंग मज़बूती सेपार्सिंग HTTP उपयोगकर्ता-एजेंट स्ट्रिंग
या शायद पता लगाने के लिए पार्स करने के लिए सबसे अच्छा तरीका है कोई सहायक लाइब्रेरी जो
मेरे अपने प्रश्न का उत्तर देना;)
अंत में मैं # 1 अर्थात सुझाव से जाने के लिए अपने स्वयं के बारे में फैसला किया। और मैं परिणाम से खुश हूं। कृपया का उपयोग करें/संशोधित/मुझे पैच आदि
भेजने के लिए स्वतंत्र लग रहा है यह यहाँ है ->http://pypi.python.org/pypi/httpagentparser
यह मोबाइल फोन के लिए विशेष रूप से अच्छी तरह से काम नहीं करता प्रतीत होता है। विशेष रूप से, ब्लैकबेरी का पता नहीं चला है। (हालांकि आपको इसे लिखने के लिए मेरा +1 मिला है!) –
@ जेसन सुंद्राम यदि आप एजेंट स्ट्रिंग और अपेक्षित परिणाम प्रदान करके सहायता करते हैं, तो ब्लैकबेरी, दूसरों को समर्थित किया जा सकता है। Https://github.com/shon/httpagentparser/issues – Shekhar
देखें मुझे तुलना में रूचि थी, लेकिन यह एक उचित बिंदु है। मुकर गए। –
हालांकि यदि आप पाइथन पक्ष पर यह सब पार्स करना चाहते हैं तो आप एक्सएमएल/आईएनआई का उपयोग कर सकते हैं उपयोगकर्ता एजेंट पर लुकअप करने के लिए http://browsers.garykeith.com/downloads.asp पर प्रदान की गई फ़ाइलें। यह वही फ़ाइल है जिसका उपयोग php's get_browser() फ़ंक्शन में किया जाता है।
था Browser Cap Parser काम करना चाहिए। यह थोड़ा धीमा है, हालांकि हो सकता है ..
UASparser for Python Hicro Kee द्वारा। स्वचालित रूप से डेटा जांच के साथ रिमोट सर्वर से डेटाफाइल और कैश अपडेट किया गया।
मैं भी UA पार्सर की सिफारिश करता हूं। – Dexter
the full corpus of Firefox User Agents के खिलाफ इन सुझावों को चलाने के बाद, मैंने पाया है कि तुलना के लिए संस्करण-संख्या पार्सिंग काफी खराब है।
यदि आपको यही चाहिए, तो मेरा सुझाव है कि आप UAparser पर एक नज़र डालें, जो browserscope प्रोजेक्ट का हिस्सा था। Documentation here.
मुझे लगता है कि इस रेपो में एक और वर्तमान संस्करण है: https://github.com/tobie/ua-parser – mbarkhau
वर्कज़ुग में उपयोगकर्ता-एजेंट पार्सिंग अंतर्निहित है।
http://werkzeug.pocoo.org/docs/0.10/utils/#module-werkzeug.useragents
दिलचस्प। मैंने तुरंत कोड की जांच की। एजेंट स्ट्रिंग के खिलाफ मिलान करने के लिए यह वास्तव में सरल, अच्छा कोड रेगेक्स की एक श्रृंखला है। दिलचस्प यह होगा कि यह कैसे करता है। वर्कज़ुग का एक प्लस प्वाइंट यह भाषा का भी पता लगाता है, जबकि httpagentparaser का लाभ यह है कि यह ओएस संस्करण का भी पता लगाता है। – Shekhar
लिंक गायब है, अद्यतन होना चाहिए – Siddharth
इस सवाल का अन्य प्रतिक्रियाओं अब बल्कि पुराने हैं। मेरा मानना है कि ब्राउजर उपयोगकर्ता एजेंट पार्सिंग में नया मानक ब्राउजरकोप का user agent parser है।
इसके अलावा ठीक उसी मिलान पैटर्न many other languages में साथ आसानी से उपलब्ध है। किसी दिन आप जावास्क्रिप्ट में कुछ UA स्ट्रिंग्स को भी पार्स करना चाहते हैं और आपको असंगत पार्सिंग के बारे में चिंता करने की आवश्यकता नहीं है।
बिंदु पर और अधिक, ब्राउज़र ओएस के आधार पर और क्षमता पहचान के लिए संस्करण एक अच्छी रणनीति नहीं है। आप कौनसी समस्याएं हल करने की कोशिश कर रहे हैं? –
हमारे पास हमारे वेब ऐप के लिए एक साधारण टिकट रिपोर्टर फॉर्म है। और हम अक्सर उपयोगकर्ताओं से पूछते हैं कि ब्रोशर/ओएस आदि क्या है। इसलिए हम इसे पहले ही पहचान सकते हैं और उपयोगकर्ता से पुष्टि करने के लिए कह सकते हैं। अच्छा, अगर यह इतना छोटा नहीं है तो हम उपयोगकर्ता-एजेंट को डंप करेंगे लेकिन फिर भी प्रश्न पूछने की आवश्यकता है, क्योंकि उपयोगकर्ता टिकट जमा करने के लिए एक अलग ब्राउज़र का उपयोग कर सकता है। – Shekhar
आप केवल पाइथन को फॉर्म प्रस्तुत करना चाहते हैं और वर्तमान ओएस के इनपुट फ़ील्ड मानों को बदलने के लिए जावास्क्रिप्ट का उपयोग करना चाहते हैं और जो भी आप चाहते हैं। – NerdyNick