{ "info": { "author": "Ivan Kozik", "author_email": "ivan@ludios.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Win32 (MS Windows)", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: Microsoft :: Windows", "Programming Language :: Python :: 2", "Programming Language :: Python :: 3", "Topic :: Multimedia :: Graphics :: Capture :: Screen Capture" ], "description": "Desktopmagic\n============\nDesktopmagic takes screenshots on Windows. It supports any\narrangement of multiple monitors, and does not leak memory in any\nfailure mode (locked workstation, no monitor attached, etc). If you wish,\nit can be used continuously to take millions of screenshots.\n\nYou may want this instead of PIL's ImageGrab because:\n\n*\tDesktopmagic can take a screenshot of all monitors. You can:\n\n\t*\tTake a screenshot of the entire virtual screen.\n\n\t*\tTake a screenshot of the entire virtual screen, split into separate PIL Images.\n\n\t*\tTake a screenshot of just one display.\n\n\t*\tTake a screenshot of an arbitrary region of the virtual screen.\n\n\t(See below for usage)\n\n*\tImageGrab leaks memory if you try to take a screenshot when the\n\tworkstation is locked (as of 2011-01).\n\n\n\nRequirements\n============\n*\tPython 2.6, 2.7, or 3.3+\n\n*\tpywin32: http://sourceforge.net/projects/pywin32/files/pywin32/\n\n*\tPIL or Pillow, unless you don't need\n\t`getScreenAsImage`, `getDisplaysAsImages`, or `getRectAsImage`.\n\n\t*\tPIL: http://www.pythonware.com/products/pil/\n\n\t*\tPillow: https://pypi.python.org/pypi/Pillow/\n\n\n\nInstallation\n============\n```\npip install Desktopmagic\n```\n\nor:\n\n```\ngit clone https://github.com/ludios/Desktopmagic\ncd Desktopmagic\npip install .\n```\n\nor without pip:\n\n```\npython setup.py install\n```\n\nThis installs the module `desktopmagic` and the script `screengrab_torture_test`.\n\n\n\nExamples\n========\n```py\nfrom __future__ import print_function\n\nfrom desktopmagic.screengrab_win32 import (\n\tgetDisplayRects, saveScreenToBmp, saveRectToBmp, getScreenAsImage,\n\tgetRectAsImage, getDisplaysAsImages)\n\n# Save the entire virtual screen as a BMP (no PIL required)\nsaveScreenToBmp('screencapture_entire.bmp')\n\n# Save an arbitrary rectangle of the virtual screen as a BMP (no PIL required)\nsaveRectToBmp('screencapture_256_256.bmp', rect=(0, 0, 256, 256))\n\n# Save the entire virtual screen as a PNG\nentireScreen = getScreenAsImage()\nentireScreen.save('screencapture_entire.png', format='png')\n\n# Get bounding rectangles for all displays, in display order\nprint(\"Display rects are:\", getDisplayRects())\n# -> something like [(0, 0, 1280, 1024), (-1280, 0, 0, 1024), (1280, -176, 3200, 1024)]\n\n# Capture an arbitrary rectangle of the virtual screen: (left, top, right, bottom)\nrect256 = getRectAsImage((0, 0, 256, 256))\nrect256.save('screencapture_256_256.png', format='png')\n\n# Unsynchronized capture, one display at a time.\n# If you need all displays, use getDisplaysAsImages() instead.\nfor displayNumber, rect in enumerate(getDisplayRects(), 1):\n\timDisplay = getRectAsImage(rect)\n\timDisplay.save('screencapture_unsync_display_%d.png' % (displayNumber,), format='png')\n\n# Synchronized capture, entire virtual screen at once, cropped to one Image per display.\nfor displayNumber, im in enumerate(getDisplaysAsImages(), 1):\n\tim.save('screencapture_sync_display_%d.png' % (displayNumber,), format='png')\n```\n\nFor more information, see the docstrings in https://github.com/ludios/Desktopmagic/blob/master/desktopmagic/screengrab_win32.py\n\n\n\nWishlist\n========\n*\tOS X support\n\n*\tLinux support\n\n\n\nContributing\n============\nPatches and pull requests are welcome.\n\nThis coding standard applies: http://ludios.org/coding-standard/\n", "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/ludios/Desktopmagic", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "Desktopmagic", "package_url": "https://pypi.org/project/Desktopmagic/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/Desktopmagic/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/ludios/Desktopmagic" }, "release_url": "https://pypi.org/project/Desktopmagic/14.3.11/", "requires_dist": null, "requires_python": null, "summary": "Robust multi-monitor screenshot grabber (Windows-only right now)", "version": "14.3.11" }, "last_serial": 1025656, "releases": { "11.5.3": [ { "comment_text": "", "digests": { "md5": "38691f5061238002a3d0efb6159180ad", "sha256": "5a9bbbd1e546daec39a61a221968fc51c6ecec24d008f1b0199fc1bea9148378" }, "downloads": -1, "filename": "Desktopmagic-11.5.3.tar.gz", "has_sig": false, "md5_digest": "38691f5061238002a3d0efb6159180ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4797, "upload_time": "2011-05-03T05:36:51", "url": "https://files.pythonhosted.org/packages/36/f7/248a2aeb0f74ced07b42c4d680c1968f6bb493e32345022e7e45f817f747/Desktopmagic-11.5.3.tar.gz" } ], "11.5.3.1": [ { "comment_text": "", "digests": { "md5": "86bd374d7aba9805af81e024a3da3903", "sha256": "13ef185763de3cdb339c09794f0b1c6c79fdaf4de53709f9fe287432b87c1f96" }, "downloads": -1, "filename": "Desktopmagic-11.5.3.1.tar.gz", "has_sig": false, "md5_digest": "86bd374d7aba9805af81e024a3da3903", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4900, "upload_time": "2011-05-03T05:57:17", "url": "https://files.pythonhosted.org/packages/23/a4/b1e2f823099a93824ec86ab1dab9dc448d1bce26ab0e8a82ea05c383205e/Desktopmagic-11.5.3.1.tar.gz" } ], "13.3.29": [ { "comment_text": "", "digests": { "md5": "e967410d2448a3934cda2ac1e5be2e17", "sha256": "a53913212e3228616a61765d43d746013aedfd6a7f528b17bbe233a57b292469" }, "downloads": -1, "filename": "Desktopmagic-13.3.29.tar.gz", "has_sig": false, "md5_digest": "e967410d2448a3934cda2ac1e5be2e17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8727, "upload_time": "2013-03-29T04:21:30", "url": "https://files.pythonhosted.org/packages/cf/fb/376aa74160894863c040fb421ca6395f7502269aa71ad124bc65dc9f4b07/Desktopmagic-13.3.29.tar.gz" }, { "comment_text": "", "digests": { "md5": "94f25f89670df11cce0cd8812c965101", "sha256": "27f51f0133abdd3d759e66cfb8cf65bef9e0f99db6b7f6125deb7699bffe6f53" }, "downloads": -1, "filename": "Desktopmagic-13.3.29.zip", "has_sig": false, "md5_digest": "94f25f89670df11cce0cd8812c965101", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12117, "upload_time": "2013-03-29T04:21:38", "url": "https://files.pythonhosted.org/packages/52/74/fe3f7949bae27d3a2228aec7079b9699db9d261a419348a6e8c1ce0527a9/Desktopmagic-13.3.29.zip" } ], "14.3.11": [ { "comment_text": "", "digests": { "md5": "bdbc0719ab6655dc7be88484fbccd2f6", "sha256": "83a798da95d5f0458943c175ec891a29e530ae6131c92414054229c0fae21dad" }, "downloads": -1, "filename": "Desktopmagic-14.3.11.tar.gz", "has_sig": false, "md5_digest": "bdbc0719ab6655dc7be88484fbccd2f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8867, "upload_time": "2014-03-11T02:10:19", "url": "https://files.pythonhosted.org/packages/b9/5c/f2e5b406fbe38cb8c60c5dd79da893a6c50de680882e68a2ad6a3c97e36d/Desktopmagic-14.3.11.tar.gz" }, { "comment_text": "", "digests": { "md5": "070708b4978ccf14a8424a141f0309a4", "sha256": "7c741982ae235a6b44ba327b0bde87d0977b8c340fa790b2380a2f9c7edfa787" }, "downloads": -1, "filename": "Desktopmagic-14.3.11.zip", "has_sig": false, "md5_digest": "070708b4978ccf14a8424a141f0309a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12387, "upload_time": "2014-03-11T02:10:21", "url": "https://files.pythonhosted.org/packages/44/d3/f68428c318a213f1c77d11ea001b341cd659e973e80abc4d3739adca9714/Desktopmagic-14.3.11.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bdbc0719ab6655dc7be88484fbccd2f6", "sha256": "83a798da95d5f0458943c175ec891a29e530ae6131c92414054229c0fae21dad" }, "downloads": -1, "filename": "Desktopmagic-14.3.11.tar.gz", "has_sig": false, "md5_digest": "bdbc0719ab6655dc7be88484fbccd2f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8867, "upload_time": "2014-03-11T02:10:19", "url": "https://files.pythonhosted.org/packages/b9/5c/f2e5b406fbe38cb8c60c5dd79da893a6c50de680882e68a2ad6a3c97e36d/Desktopmagic-14.3.11.tar.gz" }, { "comment_text": "", "digests": { "md5": "070708b4978ccf14a8424a141f0309a4", "sha256": "7c741982ae235a6b44ba327b0bde87d0977b8c340fa790b2380a2f9c7edfa787" }, "downloads": -1, "filename": "Desktopmagic-14.3.11.zip", "has_sig": false, "md5_digest": "070708b4978ccf14a8424a141f0309a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12387, "upload_time": "2014-03-11T02:10:21", "url": "https://files.pythonhosted.org/packages/44/d3/f68428c318a213f1c77d11ea001b341cd659e973e80abc4d3739adca9714/Desktopmagic-14.3.11.zip" } ] }