{ "info": { "author": "kaivean", "author_email": "kaivean@outlook.com", "bugtrack_url": null, "classifiers": [], "description": "# ua-device [![Build Status](https://travis-ci.com/kaivean/python-ua-device.svg?branch=master)](https://travis-ci.com/kaivean/python-ua-device)\n\u89e3\u6790user-agent\u7684python\u5305\uff0c\u53ef\u4ee5\u83b7\u53d6\u5230\u7cfb\u7edf\u3001\u6d4f\u89c8\u5668\u5185\u6838\u3001\u6d4f\u89c8\u5668\u3001\u8bbe\u5907\u4fe1\u606f\uff0c\u5176\u7279\u70b9\uff1a\n\n* \u76f8\u6bd4\u56fd\u5185\u5916\u7684\u6d41\u884c\u7684python\u5305\uff0c\u8be5\u6a21\u5757\u89e3\u6790\u56fd\u5185\u590d\u6742\u7684ua\u4fe1\u606f\u66f4\u52a0\u7cbe\u786e\uff0c\u6709\u51e0\u5343\u884c\u4ee3\u7801\u4e13\u95e8\u6765\u5339\u914d\u5177\u4f53\u7684\u7279\u5b9a\u7684ua\n\n## Why\n\n\u7531\u4e8e\u5728\u56fd\u5185\u751f\u4ea7PC\u7684\u5382\u5bb6\u6709\u9650\uff0c\u5927\u4f17\u7528\u6237\u4f7f\u7528\u7684\u6d4f\u89c8\u5668\u4e5f\u4e3b\u8981\u662f\u5f53\u524d\u7684\u4e00\u4e9b\u4e3b\u6d41\u6d4f\u89c8\u5668\u3002\u56e0\u6b64\u76ee\u524d\u7684UA\u89e3\u6790\u5e93\u5728\u5bf9OS\u3001\u6d4f\u89c8\u5668\u5916\u58f3\u3001\u6d4f\u89c8\u5668\u5185\u6838\u7b49\u7684\u8bc6\u522b\u7387\u90fd\u76f8\u5f53\u9ad8\u3002\u4f46\u662f\u7531\u4e8e\u56fd\u5185\u7684\u79fb\u52a8\u8bbe\u5907\u7684\u4e94\u82b1\u516b\u95e8\uff0c\u5bf9\u4e8e\u79fb\u52a8\u8bbe\u5907\u7684\u786c\u4ef6\u4fe1\u606f\u662f\u5f88\u96be\u7528\u4e00\u5957\u901a\u7528\u7684\u65b9\u6cd5\u8fdb\u884c\u8bc6\u522b\uff0c\u56e0\u6b64 ua-device \u8bde\u751f\n\n* \u901a\u8fc7\u673a\u578b\u8bc6\u522b\u54c1\u724c: \u4f8b\u5982 [-\\s](Galaxy[\\s-_]nexus|Galaxy[\\s-_]\\w*[\\s-_]\\w*|Galaxy[\\s-_]\\w*|SM-\\w*|GT-\\w*|s[cgp]h-\\w*|shw-\\w* \u8fd9\u6837\u7684\u5339\u914d\u89c4\u5219\u4ee5\u53ca\u4e00\u4e9b\u4ece\u4e2d\u5173\u6751\u5728\u7ebf\u722c\u53d6\u5230\u7684\u673a\u578b\u540d\u79f0\u5982G3508\u3001G3508J\u3001G3508i \u7b49\u8bc6\u522b\u51fa\u6765\u8be5\u673a\u578b\u7684\u54c1\u724c\u4e3aSamsung \u56e0\u4e3a\u5355\u7eaf\u4eceUA\u4fe1\u606f\u786e\u5b9e\u65e0\u6cd5\u5f97\u5230\u54c1\u724c\u6570\u636e\uff0c\u8fd9\u4e5f\u662f\u4e3a\u4f55\u5f88\u591a\u9ad8Star\u7684UA\u89e3\u6790\u5e93\u8bc6\u522b\u624b\u673a\u54c1\u724c\u6210\u529f\u7387\u53ea\u670930%-40%\u7684\u539f\u56e0(ua-device\u8bc6\u522b\u7387\u53ef\u89c1\u4e0b\u9762\u6d4b\u8bd5\u7528\u4f8b)\u3002\n* \u89e3\u51b3\u56fd\u5185UA\u4fe1\u606f\u4e0d\u89c4\u8303: \u7531\u4e8e\u56fd\u5185\u5f88\u591a\u624b\u673a\u751f\u4ea7\u5382\u5bb6\u7684\u8bbe\u8ba1\u95ee\u9898\uff0c\u4f8b\u5982\u5c0f\u7c73\u53ef\u4f9b\u8bc6\u522b\u7684UA\u6570\u636e\u53ef\u80fd\u4e3a mi 2 \u3001mi2\u3001m2\u3001mi-2LTE\u3001MI-20150XX\u3001minote\u7b49\u7b49\uff0c\u5982\u679c\u5339\u914d\u89c4\u5219\u9650\u5236\u592a\u7d27\u5c31\u4f1a\u5bfc\u81f4\u6570\u636e\u65e0\u6cd5\u547d\u4e2d\uff0c\u5982\u679c\u5339\u914d\u89c4\u5219\u592a\u677e\u53c8\u4f1a\u8ba9\u5176\u5b83\u5c71\u5be8\u673a\u578b\u6ee5\u7afd\u5145\u6570\uff0c\u6240\u4ee5\u9700\u8981\u4e00\u5957\u6bd4\u8f83\u7279\u6b8a\u7684\u5904\u7406\u6d41\u7a0b\u3002\n* \u89e3\u51b3\u56fd\u5185\u56e0\u4e0d\u540c\u53d1\u7248\u800c\u9020\u6210\u7684UA\u6570\u636e\u4e0d\u4e00\u81f4: \u4f8b\u5982\u5f88\u591a\u673a\u578b\u4f1a\u56e0\u540c\u7535\u4fe1\u3001\u79fb\u52a8\u3001\u8054\u901a\u800cUA\u4fe1\u606f\u4e0d\u540c\uff0c\u4f46\u5b9e\u9645\u5e94\u8be5\u628a\u4ed6\u4eec\u7b97\u6210\u540c\u4e00\u6b3e\u624b\u673a\n* \u89e3\u51b3\u673a\u578b\u7684\u91cd\u547d\u540d\u4e0e\u5408\u5e76: \u5f88\u591a\u624b\u673a\u5728\u4e0d\u540c\u65f6\u95f4\u751f\u4ea7\u5176UA\u4fe1\u606f\u53ef\u80fd\u4e0d\u540c\uff0c\u6240\u4ee5\u9700\u8981\u5bf9\u4ed6\u4eec\u8fdb\u884c\u5408\u5e76\uff0c\u9632\u6b62\u5728\u5c55\u793atop\u6570\u636e\u65f6\u56e0\u6570\u636e\u5206\u6563\u800c\u6392\u4e0d\u4e0a\u53f7\u3002\n\n## \u89e3\u6790\u6210\u529f\u7387\n\u4f9b\u53c2\u8003\uff08\u4ee530000\u4e2a\u7ebf\u4e0aua\u6d4b\u8bd5\uff09:\n* \u6d4f\u89c8\u5668\uff1a98.5%\n* \u7cfb\u7edf\uff1a 99.8%\n* \u5185\u6838\uff1a 99.92%\n* \u8bbe\u5907\u7c7b\u578b\uff1a 100%\n* \u8bbe\u5907\u578b\u53f7\uff1a98.9%\n* \u5382\u5546\u4fe1\u606f\uff1a87.2%\n\n## javascript\u7248\u672c\n[ua-device](https://github.com/fex-team/ua-device)\n\n\n## \u5b89\u88c5\n\n```bash\npip install -U uaDevice\n```\n\n## \u4f7f\u7528\n\n```python\nimport uaDevice\nua='Mozilla/5.0 (iPhone; CPU iPhone OS 12_0_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 MQQBrowser/8.9.1 Mobile/15E148 Safari/604.1 MttCustomUA/2 QBWebViewType/1 WKType/1'\ninfo = uaDevice.parseUA(ua)\noutput = '\\t'.join([\n info['os']['name'],\n info['os']['version']['original'],\n info['browser']['name'],\n info['browser']['version']['original'],\n info['engine']['name'],\n info['engine']['version']['original'],\n info['device']['type'],\n info['device']['model'],\n info['device']['manufacturer']\n])\nprint(output)\n```\n\n## \u8d21\u732e\n\u968f\u7740\u65b0\u8bbe\u5907\u65b0app\u7b49\u7b49\u7684\u4e0a\u5e02\uff0cua\u4fe1\u606f\u4f1a\u8d8a\u6765\u8d8a\u590d\u6742\uff0c\u56e0\u4e3a\u8be5\u9879\u76ee\u9700\u8981\u4e0d\u65ad\u8fed\u4ee3\uff0c\u5e0c\u671b\u5927\u5bb6\u4e00\u8d77\u6765\u8d21\u732e\u4e0d\u652f\u6301\u7684ua\uff0c\u4f7f\u5f97ua\u89e3\u6790\u8d8a\u6765\u8d8a\u51c6\u786e\n\n## \u611f\u8c22\n\u8be5\u9879\u76ee\u662f\u57fa\u4e8efex\u56e2\u961f\u7ef4\u62a4\u7684js\u7248\u672c\u7684ua\u89e3\u6790\u5e93[ua-device](https://github.com/fex-team/ua-device)\uff0c \u5728\u6b64\u8868\u793a\u611f\u8c22", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/kaivean/python-ua-device", "keywords": "ua,user-agent,User Agent,parser,device,os,browser,engine,data analysis,china,\u4e2d\u56fd,\u56fd\u5185", "license": "MIT Licence", "maintainer": "", "maintainer_email": "", "name": "uaDevice", "package_url": "https://pypi.org/project/uaDevice/", "platform": "any", "project_url": "https://pypi.org/project/uaDevice/", "project_urls": { "Homepage": "https://github.com/kaivean/python-ua-device" }, "release_url": "https://pypi.org/project/uaDevice/1.0.1/", "requires_dist": null, "requires_python": "", "summary": "User Agent parser, More accurate", "version": "1.0.1" }, "last_serial": 4610812, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "7de235abd1c9a6d730204bc9594b8e2a", "sha256": "dc18401b4c30bbeecf89af92a0febfde30921e932fcea456d0389a54a8512401" }, "downloads": -1, "filename": "uaDevice-1.0.0.tar.gz", "has_sig": false, "md5_digest": "7de235abd1c9a6d730204bc9594b8e2a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45812, "upload_time": "2018-12-17T13:13:10", "url": "https://files.pythonhosted.org/packages/5c/1e/750598a56449bd8c8122cc3460b4b95b43500828633cff08697ed531a29f/uaDevice-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "6bb8f97c1d3d47e96f03f65328a80ad6", "sha256": "104142db382b0f304b4680995d325860057394e5d3dbf36b11f94a0ccf18ed41" }, "downloads": -1, "filename": "uaDevice-1.0.1.tar.gz", "has_sig": false, "md5_digest": "6bb8f97c1d3d47e96f03f65328a80ad6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48352, "upload_time": "2018-12-18T04:51:45", "url": "https://files.pythonhosted.org/packages/e7/d5/1b7b4664688001d6d5d88eb125267ac75e139cfea6f469f894375256b4ab/uaDevice-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6bb8f97c1d3d47e96f03f65328a80ad6", "sha256": "104142db382b0f304b4680995d325860057394e5d3dbf36b11f94a0ccf18ed41" }, "downloads": -1, "filename": "uaDevice-1.0.1.tar.gz", "has_sig": false, "md5_digest": "6bb8f97c1d3d47e96f03f65328a80ad6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48352, "upload_time": "2018-12-18T04:51:45", "url": "https://files.pythonhosted.org/packages/e7/d5/1b7b4664688001d6d5d88eb125267ac75e139cfea6f469f894375256b4ab/uaDevice-1.0.1.tar.gz" } ] }