{ "info": { "author": "Sergey M", "author_email": "tz4678@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Description: ## Description\n \n Asynchronous Python library for Chrome DevTools.\n \n ## Install\n \n ```bash\n # via github\n pip install git+git://github.com/codedumps/async-chrome-dev-tools.git\n # via pip\n pip install -U ChromeDevTools\n ```\n \n ## Chrome Debugging Mode\n \n Launch Chrome instance with argument `--remote-debugging-port`:\n \n ```bash\n $ google-chrome-stable --remote-debugging-port=9222\n ```\n \n Instead of Chrome you can use Chronium.\n \n ## Usage\n \n ```python\n import asyncio\n from ChromeDevTools import ChromeDevTools\n \n \n async def run():\n devtools = ChromeDevTools()\n tab = await devtools.new_tab('http://linux.org.ru')\n ...\n \n \n asyncio.get_event_loop().run_until_complete(run())\n ```\n \n ## API\n \n \u0418\u043d\u0441\u0442\u0430\u043d\u0441 Chrome \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043f\u043e http \u0438 \u0447\u0435\u0440\u0435\u0437 \u0432\u0435\u0431\u0441\u043e\u043a\u0435\u0442\u044b. \u041f\u043e http \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0442\u0430\u0431\u0430\u043c\u0438. \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c JavaScript \u043d\u0430 \u043d\u0435\u0439, \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0438\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u0442.\u0434., \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a \u0442\u0430\u0431\u0443 \u0447\u0435\u0440\u0435\u0437 \u0432\u0435\u0431\u0441\u043e\u043a\u0435\u0442\u044b, \u0430 \u0437\u0430\u0442\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0447\u0435\u0440\u0435\u0437 jsonrpc. \u0412\u044b\u0437\u043e\u0432 jsonrpc-\u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u043d\u0435\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430\u043c \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b\u0437\u043e\u0432 \u043c\u0435\u0442\u043e\u0434\u0430 `Page.captureScreenshot` \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:\n \n ```python\n response = await tab.page.capture_screenshot(format='png', quality=100)\n print(response.result.data)\n ```\n \n \u041e\u0431\u0449\u0438\u0439 \u0432\u0438\u0434 \u0432\u044b\u0437\u043e\u0432\u0430 \u043c\u0435\u0442\u043e\u0434\u0430:\n \n ```python\n tab.domain.method(params_dict, param1=value1, param2=value2, ...)\n ```\n \n \u041f\u0435\u0440\u0432\u0430\u044f \u0431\u0443\u043a\u0432\u0430 \u0438\u043c\u0435\u043d\u0438 \u0434\u043e\u043c\u0435\u043d\u0430 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0432\u0435\u0440\u0445\u043d\u0438\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440, \u0438\u043c\u044f \u043c\u0435\u0442\u043e\u0434\u0430 \u0438\u0437 under_score \u0442\u0440\u0430\u043d\u0441\u043b\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 camelCase.\n \n \u041d\u0435 \u0432\u0441\u0435 \u043c\u0435\u0442\u043e\u0434\u044b API \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u044e\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043e\u0442\u0432\u0435\u0442\u0430. \u041a \u0438\u043c\u0435\u043d\u0438 \u0442\u0430\u043a\u0438\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u0435 `_nowait`. \u041f\u0440\u0438\u043c\u0435\u0440 \u0434\u043b\u044f `Network.enable`:\n \n ```python\n await tab.network.enable_nowait()\n async for event in tab:\n # \u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u0431\u044b\u0442\u0438\u044f\n ```\n \n ## Tests\n \n ```bash\n pytest tests -s\n ```\n \n ## Links\n \n * [Chrome DevTools](https://developers.google.com/web/tools/chrome-devtools/) – \u043e\u0431\u0449\u0430\u044f \u0438\u0444\u043d\u043e\u0440\u043c\u0430\u0446\u0438\u044f;\n * [Chrome DevTools Protocol](https://chromedevtools.github.io/devtools-protocol/) – \u0441\u043f\u0438\u0441\u043e\u043a \u043c\u0435\u0442\u043e\u0434\u043e\u0432, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0434\u043b\u044f \u0432\u044b\u0437\u043e\u0432\u0430 \u0447\u0435\u0440\u0435\u0437 jsonrpc\n \nKeywords: async chrome devtools\nPlatform: UNKNOWN\nClassifier: Development Status :: 3 - Alpha\nClassifier: Framework :: AsyncIO\nClassifier: Topic :: Software Development :: Debuggers\nClassifier: Programming Language :: Python :: 3\nClassifier: Programming Language :: Python :: 3.7\nDescription-Content-Type: text/markdown\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/codedumps/async-chrome-dev-tools", "keywords": "", "license": "NO F*CKING LICENSE", "maintainer": "", "maintainer_email": "", "name": "ChromeDevTools", "package_url": "https://pypi.org/project/ChromeDevTools/", "platform": "", "project_url": "https://pypi.org/project/ChromeDevTools/", "project_urls": { "Homepage": "https://github.com/codedumps/async-chrome-dev-tools" }, "release_url": "https://pypi.org/project/ChromeDevTools/0.3.9/", "requires_dist": null, "requires_python": "", "summary": "Async Chrome DevTools", "version": "0.3.9" }, "last_serial": 5081486, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "a9ccd1b4c84d320b591ec424a7b23895", "sha256": "50d0ca9968f96ceef3be1d2a75714ab7e1691e0be877a59ad5cbe0f4c1050e22" }, "downloads": -1, "filename": "ChromeDevTools-0.2.1.tar.gz", "has_sig": false, "md5_digest": "a9ccd1b4c84d320b591ec424a7b23895", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5594, "upload_time": "2019-03-31T23:00:08", "url": "https://files.pythonhosted.org/packages/62/3e/e411afa75c3e3ded46e49f81b49a67b77e6ab574ed88bf261a0e0b756bf1/ChromeDevTools-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "65bc3f8c1691b355a4b139915d51066e", "sha256": "c1af8d1201d5e0a395d5293d924a25ef4f9f51d0683a5190fa13c0b454ce6568" }, "downloads": -1, "filename": "ChromeDevTools-0.2.2.tar.gz", "has_sig": false, "md5_digest": "65bc3f8c1691b355a4b139915d51066e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5596, "upload_time": "2019-03-31T23:07:58", "url": "https://files.pythonhosted.org/packages/4f/9e/c61c5f3a4a383d2c14ca49f9b9bd37e6d8d62c8f9c7ce289a13fcc35b11c/ChromeDevTools-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "76938382f092545e551fb9df63627a4c", "sha256": "2f7db1a5939c512347c7668b9849f0768c338ce3eccec9beed19c7faf6d9e14a" }, "downloads": -1, "filename": "ChromeDevTools-0.2.3.tar.gz", "has_sig": false, "md5_digest": "76938382f092545e551fb9df63627a4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5638, "upload_time": "2019-03-31T23:16:56", "url": "https://files.pythonhosted.org/packages/6f/5f/b3ced54b849d63df2d856b1d40fe93705fd8aca81c5b60845dba9a7a361a/ChromeDevTools-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "ae4555293967be7b383d934642a43b30", "sha256": "9bdff3475307a2658ce67d9b4d215816e5918a255ba8b073e85e2c11101188a5" }, "downloads": -1, "filename": "ChromeDevTools-0.2.4.tar.gz", "has_sig": false, "md5_digest": "ae4555293967be7b383d934642a43b30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5959, "upload_time": "2019-03-31T23:20:44", "url": "https://files.pythonhosted.org/packages/6b/3b/d80c76a6037e3f76a582de325e8f4d1e916ccd4a60a19c3ccdd9de7aedb6/ChromeDevTools-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "ada52f733af799b5034f14e17a79d0ef", "sha256": "8e5813bd0872d272adf19c5012cddd4531d53e5bb35fddc7f085fe84946f27b0" }, "downloads": -1, "filename": "ChromeDevTools-0.2.5.tar.gz", "has_sig": false, "md5_digest": "ada52f733af799b5034f14e17a79d0ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5991, "upload_time": "2019-03-31T23:29:43", "url": "https://files.pythonhosted.org/packages/4d/de/dcd40e2ca235a9dfb149e98ad3a14f18ee798612e11fcaf6281ceda27b74/ChromeDevTools-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "9f108b2fc0dbd7feabc985b9233d51d9", "sha256": "d949af21fa74b00d8b0dd443a6915cd0be3cf01d77323263803f96fdec24e578" }, "downloads": -1, "filename": "ChromeDevTools-0.2.6.tar.gz", "has_sig": false, "md5_digest": "9f108b2fc0dbd7feabc985b9233d51d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6037, "upload_time": "2019-03-31T23:34:17", "url": "https://files.pythonhosted.org/packages/fb/1b/fbcef1ac5ebaecfc48998599784d61ec8da7a951cd469bed6fdbbac7a747/ChromeDevTools-0.2.6.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a0e60e02047580133ed4053b00914ff6", "sha256": "7425c5d460d62621d09532bbfae33b1b7e71755d55b229d05aca38d5f94fc5de" }, "downloads": -1, "filename": "ChromeDevTools-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a0e60e02047580133ed4053b00914ff6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6040, "upload_time": "2019-03-31T23:35:11", "url": "https://files.pythonhosted.org/packages/9a/b0/609734a853123cc7d96c7a2781e2b573225b31829ad3247c25d7c88fdfcc/ChromeDevTools-0.3.0.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "896746122079430e289bda37a01456fb", "sha256": "a21a50992f31e10ebf69ff12b0715fae25567d5453a37f307248e89070461503" }, "downloads": -1, "filename": "ChromeDevTools-0.3.5.tar.gz", "has_sig": false, "md5_digest": "896746122079430e289bda37a01456fb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6233, "upload_time": "2019-04-02T21:10:23", "url": "https://files.pythonhosted.org/packages/da/d2/9fa4eff4ac8aa5fa0b8b7414b203746b4aa7475b27bea7007b1ecd0f6d4e/ChromeDevTools-0.3.5.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "a08c28ea0063a9d1834c0582885f38a3", "sha256": "998cae896a137fd2d0fb928b8e28ce7ebf58eb6f461428d7debad776ccced1cb" }, "downloads": -1, "filename": "ChromeDevTools-0.3.6.tar.gz", "has_sig": false, "md5_digest": "a08c28ea0063a9d1834c0582885f38a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6249, "upload_time": "2019-04-02T21:31:04", "url": "https://files.pythonhosted.org/packages/47/46/7633ebe7fd369721fc963d9fdfde4e5d648e40114fa91968f111e4174914/ChromeDevTools-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "abf303fe3308c75b5afea7ef1e1859b2", "sha256": "d8e941ecfa17f84baaf8670784b7ee914069942e95c191cfe46d06c37bcdcbb8" }, "downloads": -1, "filename": "ChromeDevTools-0.3.7.tar.gz", "has_sig": false, "md5_digest": "abf303fe3308c75b5afea7ef1e1859b2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6247, "upload_time": "2019-04-02T23:00:36", "url": "https://files.pythonhosted.org/packages/54/45/a6d37834a328d3de5b176d159348b85e9cef681ad3f39c104a5903b27816/ChromeDevTools-0.3.7.tar.gz" } ], "0.3.8": [ { "comment_text": "", "digests": { "md5": "94ccaf044f8cff0537747f168ad80acf", "sha256": "56bb86992018ea49bec0cc8cead8d7ad34f1e5e1f0b8fa686ac547303ea8d7a8" }, "downloads": -1, "filename": "ChromeDevTools-0.3.8.tar.gz", "has_sig": false, "md5_digest": "94ccaf044f8cff0537747f168ad80acf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6297, "upload_time": "2019-04-02T23:30:25", "url": "https://files.pythonhosted.org/packages/af/29/9ebd048d1b2c93ea455ba524e8edf140645bb874beb4f22ff208cd4a114f/ChromeDevTools-0.3.8.tar.gz" } ], "0.3.9": [ { "comment_text": "", "digests": { "md5": "a03ce1e08d79be4ab7d98ac17e5691f1", "sha256": "7d225f7ca077055db699df2dc30b30ff01b5c80df1e81f33cb8bb1542986b376" }, "downloads": -1, "filename": "ChromeDevTools-0.3.9.tar.gz", "has_sig": false, "md5_digest": "a03ce1e08d79be4ab7d98ac17e5691f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6298, "upload_time": "2019-04-02T23:46:08", "url": "https://files.pythonhosted.org/packages/a0/09/01d5ec909a8bf3a74830085d6f73c8397cf6b3b59b60de5bee34ad8b11a5/ChromeDevTools-0.3.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a03ce1e08d79be4ab7d98ac17e5691f1", "sha256": "7d225f7ca077055db699df2dc30b30ff01b5c80df1e81f33cb8bb1542986b376" }, "downloads": -1, "filename": "ChromeDevTools-0.3.9.tar.gz", "has_sig": false, "md5_digest": "a03ce1e08d79be4ab7d98ac17e5691f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6298, "upload_time": "2019-04-02T23:46:08", "url": "https://files.pythonhosted.org/packages/a0/09/01d5ec909a8bf3a74830085d6f73c8397cf6b3b59b60de5bee34ad8b11a5/ChromeDevTools-0.3.9.tar.gz" } ] }