{ "info": { "author": "Dmitry Dygalo", "author_email": "dadygalo@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: Jython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Testing", "Topic :: Software Development :: User Interfaces" ], "description": "BrowserStacker\n==============\nPython wrapper for `BrowserStack `_ features.\n\n|Build Status| |codecov.io|\n\n\nInstallation\n------------\n\nThe current stable release:\n\n::\n\n pip install browserstacker\n\nor:\n\n::\n\n easy_install browserstacker\n\nor from source:\n\n::\n\n $ sudo python setup.py install\n\nUsage\n-----\n\nTo start working with BrowserStack ScreenShots API simply type:\n\n.. code:: python\n\n >>> from browserstacker import ScreenShotsAPI\n >>> api = ScreenShotsAPI('user', 'key')\n >>> api.browsers()\n [\n {\n \"os\": \"Windows\",\n \"os_version\": \"XP\",\n \"browser\": \"chrome\",\n \"browser_version\": \"21.0\",\n \"device\": None\n },\n {\n \"os\": \"ios\",\n \"os_version\": \"6.0\",\n \"browser\": \"Mobile Safari\",\n \"browser_version\": None,\n \"device\": \"iPhone 4S (6.0)\"\n }\n ....\n ]\n\nOptionally you can filter the output of ``browsers`` by ``browser``, ``browser_version``, ``device``, ``os`` or ``os_version``.\n\n.. code:: python\n\n >>> api.browsers(os='Windows', browser='chrome')\n [\n {\n \"os\": \"Windows\",\n \"os_version\": \"8.1\",\n \"browser\": \"chrome\",\n \"browser_version\": \"22.0\",\n \"device\": None\n },\n {\n \"os\": \"Windows\",\n \"os_version\": \"8.1\",\n \"browser\": \"chrome\",\n \"browser_version\": \"23.0\",\n \"device\": None\n }\n ....\n ]\n\nCommand line:\n\n.. code:: bash\n\n $ browserstacker browsers -os Windows -b chrome\n Available browsers:\n\n ------\n browser_version: 22.0\n os: Windows\n browser: chrome\n device: None\n os_version: 8.1\n ------\n ...\n Total browsers: 100\n\n\nFiltration values are case insensitive and are casted to strings during filtration.\nE.g. you can use integers for filtration by ``os_version`` parameter.\nAlso it is possible to filter by multiple values:\n\n.. code:: python\n\n >>> api.browsers(os='Windows', browser=('chrome', 'firefox'))\n [\n {\n \"os\": \"Windows\",\n \"os_version\": \"8.1\",\n \"browser\": \"chrome\",\n \"browser_version\": \"22.0\",\n \"device\": None\n },\n {\n \"os\": \"Windows\",\n \"os_version\": \"8.1\",\n \"browser\": \"firefox\",\n \"browser_version\": \"16.0\",\n \"device\": None\n }\n ....\n ]\n\nCommand line:\n\n.. code:: bash\n\n $ browserstacker browsers -os Windows -b chrome -b firefox\n Available browsers:\n\n ------\n browser_version: 22.0\n os: Windows\n browser: chrome\n device: None\n os_version: 8.1\n ------\n ...\n Total browsers: 215\n\nTo generate screenshots:\n\n.. code:: python\n\n >>> browser = api.browsers()[0]\n >>> response = api.generate('http://www.google.com', browser)\n\nCommand line:\n\n.. code:: bash\n\n $ browserstacker generate http://www.google.com -os Windows -b firefox -bv 37.0 -ov XP\n\nHere you can pass single browsers or list of them.\nYou'll get the ``job_id`` from response. To list available screenshots for ``job_id``:\n\n.. code:: python\n\n >>> api.list(response['job_id'])\n {\n \"id\":\"13b93a14db22872fcb5fd1c86b730a51197db319\",\n \"state\":\"done\",\n \"callback_url\": \"http://staging.example.com\",\n \"win_res\": \"1024x768\",\n \"mac_res\": \"1920x1080\",\n \"quality\": \"compressed\",\n \"wait_time\": 5,\n \"screenshots\": [\n {\n \"os\":\"Windows\",\n \"os_version\":\"XP\",\n \"browser\":\"ie\",\n \"browser_version\":\"7.0\",\n \"id\":\"be9989892cbba9b9edc2c95f403050aa4996ac6a\",\n \"state\":\"done\",\n \"url\":\"www.google.com\",\n \"thumb_url\":\"https://www.browserstack.com/screenshots/13b93a14db22872fcb5fd1c86b730a51197db319/thumb_winxp_ie_7.0.jpg\",\n \"image_url\":\"https://www.browserstack.com/screenshots/13b93a14db22872fcb5fd1c86b730a51197db319/winxp_ie_7.0.png\",\n \"created_at\":\"2013-03-14 16:25:45 UTC\",\n }\n ]\n }\n\nCommand line:\n\n.. code:: bash\n\n $ browserstacker list 13b93a14db22872fcb5fd1c86b730a51197db319\n\nTo download screenshots:\n\n.. code:: python\n\n >>> api.download(response['job_id'], 'path_to_screenshots_dir')\n\nCommand line:\n\n.. code:: bash\n\n $ browserstacker download 13b93a14db22872fcb5fd1c86b730a51197db319 -d screenshots_dir\n\nAll screenshots will be saved in 'path_to_screenshots_dir'. If ``destination`` kwarg is absent, then screenshots will be\ndownloaded to current working directory.\nAlso you can use shortcut to create & download screenshots to your local machine:\n\n.. code:: python\n\n >>> response = api.make('http://www.google.com', browser, destination='path_to_screenshots_dir')\n\nCommand line:\n\n.. code:: bash\n\n $ browserstacker make -os Windows -b firefox -bv 37.0 -ov XP -d screenshots_dir\n\nCommand line interface\n~~~~~~~~~~~~~~~~~~~~~~\n\nBrowserstacker comes with command line interface built with `Click `_.\nAfter installation ``browserstacker`` entry point will be available\nIt exposes almost the same API as ``ScreenShotsAPI`` does. Does not support Python 3.2.\n\nTo use CLI you have to pass user & key directly:\n\n.. code:: bash\n\n $ browserstacker -u user -k key browsers\n Available browsers:\n ...\n Total browsers: 629\n\nOr via environment variables:\n\n.. code:: bash\n\n $ export BROWSERSTACK_USER=user\n $ export BROWSERSTACK_KEY=key\n $ browserstacker browsers\n\nHelp is also available:\n\n.. code:: bash\n\n $ browserstacker --help\n Usage: browserstacker [OPTIONS] COMMAND [ARGS]...\n\n Options:\n -u, --user TEXT Username on BrowserStack\n -k, --key TEXT Access key\n -v, --verbosity Verbosity level\n --version Show the version and exit.\n --help Show this message and exit.\n\n Commands:\n download\n generate\n browsers\n list\n make\n\nPython support\n--------------\n\nBrowserStacker supports Python 2.6, 2.7, 3.2, 3.3, 3.4, 3.5, PyPy, PyPy3 and Jython.\n**NOTE**. CLI does not support Python 3.2.\n\n\n.. |Build Status| image:: https://travis-ci.org/Stranger6667/browserstacker.svg?branch=master\n :target: https://travis-ci.org/Stranger6667/browserstacker\n\n.. |codecov.io| image:: https://codecov.io/github/Stranger6667/browserstacker/coverage.svg?branch=master\n :target: https://codecov.io/github/Stranger6667/browserstacker?branch=master", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Stranger6667/browserstacker", "keywords": "browserstack,screenshots,testing", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "browserstacker", "package_url": "https://pypi.org/project/browserstacker/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/browserstacker/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/Stranger6667/browserstacker" }, "release_url": "https://pypi.org/project/browserstacker/0.3.1/", "requires_dist": null, "requires_python": null, "summary": "Python wrapper for BrowserStack features.", "version": "0.3.1" }, "last_serial": 2176218, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "03e75fcfc6364961fab65c840317901a", "sha256": "51e78b7058dbce8ddfcfe422d9cc63983fff5702c94e84da9957cf859f2d3853" }, "downloads": -1, "filename": "browserstacker-0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "03e75fcfc6364961fab65c840317901a", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 11715, "upload_time": "2016-01-25T10:04:49", "url": "https://files.pythonhosted.org/packages/71/89/57f05eacbd0834e57f2139ad0cb0ec5fb2cf953ec1b04c0ec45a356b196d/browserstacker-0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cda7f88fb387bf771b03281fc72cf09b", "sha256": "9ffa4ceecdede71e2d520a360ba77a678e71ae78b73a493a27d11fb487885840" }, "downloads": -1, "filename": "browserstacker-0.2.tar.gz", "has_sig": false, "md5_digest": "cda7f88fb387bf771b03281fc72cf09b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9499, "upload_time": "2016-01-25T10:04:19", "url": "https://files.pythonhosted.org/packages/d3/f5/79d1f97d91c7bdece28c52b7956265c7724525ff097b2bf6e8051ae5ec56/browserstacker-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "7d7dfdc3b89744e7009ce94f58aed01f", "sha256": "097d3fd18cf619f9e517de96c88d8a9d9296911967ab1e4e2c7b5c41b59bd605" }, "downloads": -1, "filename": "browserstacker-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7d7dfdc3b89744e7009ce94f58aed01f", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 12422, "upload_time": "2016-01-25T13:49:34", "url": "https://files.pythonhosted.org/packages/65/73/a2b13c80694a9500219167846f1b334230b70d466413b9e958cc308f74b5/browserstacker-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "119d68679c28034262e91b3cd743bd75", "sha256": "41ead5a37dec012a66a4c9a7a9bd46b2505d9cda2b14134a00a6e73d85efc12d" }, "downloads": -1, "filename": "browserstacker-0.2.1.tar.gz", "has_sig": false, "md5_digest": "119d68679c28034262e91b3cd743bd75", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10399, "upload_time": "2016-01-25T13:49:02", "url": "https://files.pythonhosted.org/packages/e3/b4/6f53b04cf82e017024e54292d9c42a8a67ede6161c0ccffd5eaa2b576f9a/browserstacker-0.2.1.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "5c0607f8a2ad35304fa91f62edaf02b7", "sha256": "6ffa60593f5e3970ec459590105dff42169f6e17084600e6489606406d880829" }, "downloads": -1, "filename": "browserstacker-0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5c0607f8a2ad35304fa91f62edaf02b7", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 27917, "upload_time": "2016-02-11T07:27:09", "url": "https://files.pythonhosted.org/packages/12/7f/a6826f615f69df7810864ba0008b1a8cc19225431865cf1814f549d3167c/browserstacker-0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "50f812b0e65aef818ea1d670e6ecb398", "sha256": "396d777c43e399f4c1df602529e548e6ff79f26d415e8d22ae98ee31f9c6b130" }, "downloads": -1, "filename": "browserstacker-0.3.tar.gz", "has_sig": false, "md5_digest": "50f812b0e65aef818ea1d670e6ecb398", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21146, "upload_time": "2016-02-11T07:27:00", "url": "https://files.pythonhosted.org/packages/6d/1c/848eeda9fa50cc15d281267d60fbcf88f90fcb2b0798d02d0653a4c1ca10/browserstacker-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "9fb715553fe98d4669c07e964c5673bf", "sha256": "5883824ce63a78e63f184d9f314f5bea926f4aefbe34523b40bf792fc91e7e7b" }, "downloads": -1, "filename": "browserstacker-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9fb715553fe98d4669c07e964c5673bf", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 28231, "upload_time": "2016-06-19T20:08:13", "url": "https://files.pythonhosted.org/packages/d7/40/9d2f17ef49b9a34eb1cb5dc57584c3e5bf6f439dd0a71c0543b87a0fec0e/browserstacker-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2d63ab9a660909976b96e974a39f44bd", "sha256": "b015cd067c25e715a0e8ac510d553af5792d9c2e02b6cd7fef0c62f58300004e" }, "downloads": -1, "filename": "browserstacker-0.3.1.tar.gz", "has_sig": false, "md5_digest": "2d63ab9a660909976b96e974a39f44bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21511, "upload_time": "2016-06-19T20:07:25", "url": "https://files.pythonhosted.org/packages/af/3f/ea3161bc74a6c811e6eb229aae11648af9001dadab67066ed1659c495edd/browserstacker-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9fb715553fe98d4669c07e964c5673bf", "sha256": "5883824ce63a78e63f184d9f314f5bea926f4aefbe34523b40bf792fc91e7e7b" }, "downloads": -1, "filename": "browserstacker-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9fb715553fe98d4669c07e964c5673bf", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 28231, "upload_time": "2016-06-19T20:08:13", "url": "https://files.pythonhosted.org/packages/d7/40/9d2f17ef49b9a34eb1cb5dc57584c3e5bf6f439dd0a71c0543b87a0fec0e/browserstacker-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2d63ab9a660909976b96e974a39f44bd", "sha256": "b015cd067c25e715a0e8ac510d553af5792d9c2e02b6cd7fef0c62f58300004e" }, "downloads": -1, "filename": "browserstacker-0.3.1.tar.gz", "has_sig": false, "md5_digest": "2d63ab9a660909976b96e974a39f44bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21511, "upload_time": "2016-06-19T20:07:25", "url": "https://files.pythonhosted.org/packages/af/3f/ea3161bc74a6c811e6eb229aae11648af9001dadab67066ed1659c495edd/browserstacker-0.3.1.tar.gz" } ] }