{ "info": { "author": "Al Sweigart", "author_email": "al@inventwithpython.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: MacOS X", "Environment :: Win32 (MS Windows)", "Environment :: X11 Applications", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "PyGetWindow\n===========\n\nA simple, cross-platform module for obtaining GUI information on and controlling application's windows.\n\n\nStill under development. Currently only the Windows platform is implemented. If you want to help contribute, please contact al@inventwithpython.com!\n\n\nInstall\n-------\n\n pip install pygetwindow\n\n\nExamples\n--------\n\n(For this example, I'm using Winodws and opened the Notepad application, which has a title of \"Untitled - Notepad\". Most of the effects of these functions can't be seen in text.)\n\nPyGetWindow has functions for obtaining ``Window`` objects from a place on the screen, from the window title, or just getting all windows. (``hWnd`` is specific to the Windows platform.)\n\n >>> import pygetwindow as gw\n >>> gw.getAllTitles()\n ('', 'C:\\\\WINDOWS\\\\system32\\\\cmd.exe - pipenv shell - python', 'C:\\\\github\\\\PyGetWindow\\\\README.md \u2022 - Sublime Text', \"asweigart/PyGetWindow: A simple, cross-platform module for obtaining GUI information on application's windows. - Google Chrome\", 'Untitled - Notepad', 'C:\\\\Users\\\\Al\\\\Desktop\\\\xlibkey.py \u2022 - Sublime Text', 'https://tronche.com/gui/x/xlib/ - Google Chrome', 'Xlib Programming Manual: XGetWindowAttributes - Google Chrome', 'Generic Ubuntu Box [Running] - Oracle VM VirtualBox', 'Oracle VM VirtualBox Manager', 'Microsoft Edge', 'Microsoft Edge', 'Microsoft Edge', '', 'Microsoft Edge', 'Settings', 'Settings', 'Microsoft Store', 'Microsoft Store', '', '', 'Backup and Sync', 'Google Hangouts - asweigart@gmail.com', 'Downloads', '', '', 'Program Manager')\n >>> gw.getAllWindows()\n (Win32Window(hWnd=131318), Win32Window(hWnd=1050492), Win32Window(hWnd=67206), Win32Window(hWnd=66754), Win32Window(hWnd=264354), Win32Window(hWnd=329210), Win32Window(hWnd=1114374), Win32Window(hWnd=852550), Win32Window(hWnd=328358), Win32Window(hWnd=66998), Win32Window(hWnd=132508), Win32Window(hWnd=66964), Win32Window(hWnd=66882), Win32Window(hWnd=197282), Win32Window(hWnd=393880), Win32Window(hWnd=66810), Win32Window(hWnd=328466), Win32Window(hWnd=132332), Win32Window(hWnd=262904), Win32Window(hWnd=65962), Win32Window(hWnd=65956), Win32Window(hWnd=197522), Win32Window(hWnd=131944), Win32Window(hWnd=329334), Win32Window(hWnd=395034), Win32Window(hWnd=132928), Win32Window(hWnd=65882))\n >>> gw.getWindowsWithTitle('Untitled')\n (Win32Window(hWnd=264354),)\n >>> gw.getFocusedWindow()\n Win32Window(hWnd=1050492)\n >>> gw.getFocusedWindow().title\n 'C:\\\\WINDOWS\\\\system32\\\\cmd.exe - pipenv shell - python'\n >>> gw.getWindowsAt(10, 10)\n (Win32Window(hWnd=67206), Win32Window(hWnd=66754), Win32Window(hWnd=329210), Win32Window(hWnd=1114374), Win32Window(hWnd=852550), Win32Window(hWnd=132508), Win32Window(hWnd=66964), Win32Window(hWnd=66882), Win32Window(hWnd=197282), Win32Window(hWnd=393880), Win32Window(hWnd=66810), Win32Window(hWnd=328466), Win32Window(hWnd=395034), Win32Window(hWnd=132928), Win32Window(hWnd=65882))\n\n\n``Window`` objects can be minimized/maximized/restored/focused/resized/moved/closed and also have attributes for their current position, size, and state.\n\n >>> notepadWindow = gw.getWindowsWithTitle('Untitled')[0]\n >>> notepadWindow.isMaximized\n False\n >>> notepadWindow.maximize()\n >>> notepadWindow.isMaximized\n True\n >>> notepadWindow.restore()\n >>> notepadWindow.minimize()\n >>> notepadWindow.restore()\n >>> notepadWindow.focus()\n >>> notepadWindow.resize(10, 10) # increase by 10, 10\n >>> notepadWindow.resizeTo(100, 100) # set size to 100x100\n >>> notepadWindow.move(10, 10) # move 10 pixels right and 10 down\n >>> notepadWindow.moveTo(10, 10) # move window to 10, 10\n >>> notepadWindow.size\n (132, 100)\n >>> notepadWindow.width\n 132\n >>> notepadWindow.height\n 100\n >>> notepadWindow.topleft\n (10, 10)\n >>> notepadWindow.top\n 10\n >>> notepadWindow.left\n 10\n >>> notepadWindow.bottomright\n (142, 110)\n >>> notepadWindow.close()\n >>>", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/asweigart/pygetwindow", "keywords": "gui window geometry resize minimize maximize close title", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "PyGetWindow", "package_url": "https://pypi.org/project/PyGetWindow/", "platform": "", "project_url": "https://pypi.org/project/PyGetWindow/", "project_urls": { "Homepage": "https://github.com/asweigart/pygetwindow" }, "release_url": "https://pypi.org/project/PyGetWindow/0.0.7/", "requires_dist": null, "requires_python": "", "summary": "A simple, cross-platform module for obtaining GUI information on application's windows.", "version": "0.0.7" }, "last_serial": 5628991, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "b09d077eedca14294a9c4191278848bf", "sha256": "13fda88a604a947b02d6d9b880f11c3f2f77281e397152e0be3198db7b80e257" }, "downloads": -1, "filename": "PyGetWindow-0.0.1.tar.gz", "has_sig": false, "md5_digest": "b09d077eedca14294a9c4191278848bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4924, "upload_time": "2018-11-09T21:21:42", "url": "https://files.pythonhosted.org/packages/66/93/1229fa064cef5081b06a41512085ca590b93ac949e0af82341a488a4f596/PyGetWindow-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "94a2e5051901779f60083537774ab3cf", "sha256": "e50b7df4601b01ece59a26dd9330b548e25aba774944a7074ca1fddaeb4217cf" }, "downloads": -1, "filename": "PyGetWindow-0.0.2.tar.gz", "has_sig": false, "md5_digest": "94a2e5051901779f60083537774ab3cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7636, "upload_time": "2018-11-12T07:43:33", "url": "https://files.pythonhosted.org/packages/35/a0/c25d7efc3cf2a3c5d14779792fa259f6023c181f8acbc5fd112d9c494d1f/PyGetWindow-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "a5535bda9858e3e67734b6ae3f60f34e", "sha256": "2cf4191889108507d396291750fc3b1af8f4cba2d22b45ffe9dd96dae593dcfe" }, "downloads": -1, "filename": "PyGetWindow-0.0.3.tar.gz", "has_sig": false, "md5_digest": "a5535bda9858e3e67734b6ae3f60f34e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8859, "upload_time": "2019-01-05T18:39:06", "url": "https://files.pythonhosted.org/packages/f1/54/740939161eb3471e8f775ce9b0fcac0e54c36bf63501e51f2cd7158f587d/PyGetWindow-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "ff579c9a7601cd256111cca0314b83b9", "sha256": "e51e173f2ce8a6a9260fde7f0cf4d15df99ea0d622fad67a400f3e9d6a8a67f2" }, "downloads": -1, "filename": "PyGetWindow-0.0.4.tar.gz", "has_sig": false, "md5_digest": "ff579c9a7601cd256111cca0314b83b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8898, "upload_time": "2019-01-29T02:11:49", "url": "https://files.pythonhosted.org/packages/01/ed/56d4a369c6e18f6b239d9ef37b3222ba308bfebf949571b2611ff7d64f1d/PyGetWindow-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "6323635e667b0b3027f130e2175cd7a3", "sha256": "16aff71832f58b31aad0b2f6e0152108c94ddd9942c9bce926a879ffc0c70857" }, "downloads": -1, "filename": "PyGetWindow-0.0.5.tar.gz", "has_sig": false, "md5_digest": "6323635e667b0b3027f130e2175cd7a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8880, "upload_time": "2019-05-18T00:55:12", "url": "https://files.pythonhosted.org/packages/8c/95/d401a85c5e9a40fac545708961b38beb5a71c9a8fc607de30d31f03de17e/PyGetWindow-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "a264a71e4c715a254afc5d4b3ae1f2fd", "sha256": "f98a866a65ce9ca498838e659628a6f732e76f06a58fe0a61a35077ddf27b227" }, "downloads": -1, "filename": "PyGetWindow-0.0.6.tar.gz", "has_sig": false, "md5_digest": "a264a71e4c715a254afc5d4b3ae1f2fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8855, "upload_time": "2019-06-18T22:02:57", "url": "https://files.pythonhosted.org/packages/f7/fb/a339eeb9cf4b6a6de00e041d78eb94b98762599c03324d32f898aa9e5c4d/PyGetWindow-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "5635d2ba6b8a28fa5b4b84bbdabb500f", "sha256": "e012c13e3845044f7a3cfba77bd83ee558ba5df450c3b6da04a011bb92cf9b96" }, "downloads": -1, "filename": "PyGetWindow-0.0.7.tar.gz", "has_sig": false, "md5_digest": "5635d2ba6b8a28fa5b4b84bbdabb500f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8989, "upload_time": "2019-08-03T19:24:52", "url": "https://files.pythonhosted.org/packages/a3/e1/0a96db293bbcb56dd08209f6c1275e9282385526a8900a3411d669b140ee/PyGetWindow-0.0.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5635d2ba6b8a28fa5b4b84bbdabb500f", "sha256": "e012c13e3845044f7a3cfba77bd83ee558ba5df450c3b6da04a011bb92cf9b96" }, "downloads": -1, "filename": "PyGetWindow-0.0.7.tar.gz", "has_sig": false, "md5_digest": "5635d2ba6b8a28fa5b4b84bbdabb500f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8989, "upload_time": "2019-08-03T19:24:52", "url": "https://files.pythonhosted.org/packages/a3/e1/0a96db293bbcb56dd08209f6c1275e9282385526a8900a3411d669b140ee/PyGetWindow-0.0.7.tar.gz" } ] }