diff --git a/.travis.yml b/.travis.yml index c1ed496..3ded8d1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,8 +11,6 @@ env: - TOX_ENV=py35 - TOX_ENV=pypy - TOX_ENV=docs - - TOX_ENV=pep8 - - TOX_ENV=py3pep8 install: - pip install tox diff --git a/MANIFEST.in b/MANIFEST.in index 6d2c74a..044173d 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,2 +1,2 @@ -include README.md +include README.rst global-exclude *~ diff --git a/README.md b/README.md deleted file mode 100644 index 1864ad7..0000000 --- a/README.md +++ /dev/null @@ -1,96 +0,0 @@ -#uap-python -A python implementation of the UA Parser (https://github.com/ua-parser, formerly https://github.com/tobie/ua-parser) - -##Build Status - -[![Build Status](https://travis-ci.org/ua-parser/uap-python.svg)](https://travis-ci.org/ua-parser/uap-python) - -##Installing - -### Install via pip -Just run: -``` -$ pip install ua-parser -``` - -### Manual install -In the top-level directory run: -``` -$ python setup.py install -``` - -##Getting Started - -### retrieve data on a user-agent string -``` ->>> from ua_parser import user_agent_parser ->>> import pprint ->>> pp = pprint.PrettyPrinter(indent=4) ->>> ua_string = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36' ->>> parsed_string = user_agent_parser.Parse(ua_string) ->>> pp.pprint(parsed_string) -{ 'device': { 'brand': None, 'family': 'Other', 'model': None}, - 'os': { 'family': 'Mac OS X', - 'major': '10', - 'minor': '9', - 'patch': '4', - 'patch_minor': None}, - 'string': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36', - 'user_agent': { 'family': 'Chrome', - 'major': '41', - 'minor': '0', - 'patch': '2272'}} -``` - - -### extract browser data from user-agent string - -``` ->>> from ua_parser import user_agent_parser ->>> import pprint ->>> pp = pprint.PrettyPrinter(indent=4) ->>> ua_string = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36' ->>> parsed_string = user_agent_parser.ParseUserAgent(ua_string) ->>> pp.pprint(parsed_string) - { 'family': 'Chrome', - 'major': '41', - 'minor': '0', - 'patch': '2272'} -``` - -### extract OS information from user-agent string - -``` ->>> from ua_parser import user_agent_parser ->>> import pprint ->>> pp = pprint.PrettyPrinter(indent=4) ->>> ua_string = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36' ->>> parsed_string = user_agent_parser.ParseOS(ua_string) ->>> pp.pprint(parsed_string) -{ 'family': 'Mac OS X', - 'major': '10', - 'minor': '9', - 'patch': '4', - 'patch_minor': None} -``` - -### extract Device information from user-agent string - - -``` ->>> from ua_parser import user_agent_parser ->>> import pprint ->>> pp = pprint.PrettyPrinter(indent=4) ->>> ua_string = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36' ->>> parsed_string = user_agent_parser.ParseDevice(ua_string) ->>> pp.pprint(parsed_string) -{ 'brand': None, - 'family': 'Other', - 'model': None} -``` - - -## Copyright - -Copyright 2008 Google Inc. See ua_parser/LICENSE for more information - diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..e817694 --- /dev/null +++ b/README.rst @@ -0,0 +1,111 @@ +uap-python +========== + +A python implementation of the UA Parser (https://github.com/ua-parser, +formerly https://github.com/tobie/ua-parser) + +Build Status +------------ + +.. image:: https://travis-ci.org/ua-parser/uap-python.svg + :target: https://travis-ci.org/ua-parser/uap-python + +Installing +---------- + +Install via pip +~~~~~~~~~~~~~~~ + +Just run: + +.. code-block:: sh + + $ pip install ua-parser + +Manual install +~~~~~~~~~~~~~~ + +In the top-level directory run: + +.. code-block:: sh + + $ python setup.py install + +Getting Started +--------------- + +Retrieve data on a user-agent string +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. code-block:: python + + >>> from ua_parser import user_agent_parser + >>> import pprint + >>> pp = pprint.PrettyPrinter(indent=4) + >>> ua_string = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36' + >>> parsed_string = user_agent_parser.Parse(ua_string) + >>> pp.pprint(parsed_string) + { 'device': { 'brand': None, 'family': 'Other', 'model': None}, + 'os': { 'family': 'Mac OS X', + 'major': '10', + 'minor': '9', + 'patch': '4', + 'patch_minor': None}, + 'string': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36', + 'user_agent': { 'family': 'Chrome', + 'major': '41', + 'minor': '0', + 'patch': '2272'}} + +Extract browser data from user-agent string +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. code-block:: python + + >>> from ua_parser import user_agent_parser + >>> import pprint + >>> pp = pprint.PrettyPrinter(indent=4) + >>> ua_string = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36' + >>> parsed_string = user_agent_parser.ParseUserAgent(ua_string) + >>> pp.pprint(parsed_string) + { 'family': 'Chrome', + 'major': '41', + 'minor': '0', + 'patch': '2272'} + +Extract OS information from user-agent string +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. code-block:: python + + >>> from ua_parser import user_agent_parser + >>> import pprint + >>> pp = pprint.PrettyPrinter(indent=4) + >>> ua_string = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36' + >>> parsed_string = user_agent_parser.ParseOS(ua_string) + >>> pp.pprint(parsed_string) + { 'family': 'Mac OS X', + 'major': '10', + 'minor': '9', + 'patch': '4', + 'patch_minor': None} + +Extract Device information from user-agent string +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. code-block:: python + + >>> from ua_parser import user_agent_parser + >>> import pprint + >>> pp = pprint.PrettyPrinter(indent=4) + >>> ua_string = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.104 Safari/537.36' + >>> parsed_string = user_agent_parser.ParseDevice(ua_string) + >>> pp.pprint(parsed_string) + { 'brand': None, + 'family': 'Other', + 'model': None} + +Copyright +--------- + +Copyright 2008 Google Inc. See ua\_parser/LICENSE for more information diff --git a/tox.ini b/tox.ini index 83d0fc6..1fc8105 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py26, py27, pypy, py31, py32, py33, py34, py35, docs, pep8, py3pep8 +envlist = py26, py27, pypy, py31, py32, py33, py34, py35, docs [testenv] deps = @@ -7,3 +7,9 @@ deps = commands = python setup.py develop python ua_parser/user_agent_parser_test.py + +[testenv:docs] +deps = docutils + Pygments +commands = + python setup.py check -s --restructuredtext --metadata