{"id":7870,"date":"2024-03-14T07:11:49","date_gmt":"2024-03-14T07:11:49","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/"},"modified":"2025-08-02T21:48:33","modified_gmt":"2025-08-02T21:48:33","slug":"how-to-retrieve-and-control-window-handles-in-python","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/","title":{"rendered":"Python Window Handles: Control with PyAutoGUI"},"content":{"rendered":"<p>You can use the pyautogui library in Python to obtain window handles and control windows. Below is an example code showing how to retrieve the current window handle and control the window&#8217;s position and size.<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">import<\/span> pyautogui\r\n\r\n<span class=\"hljs-comment\"># \u83b7\u53d6\u5f53\u524d\u6d3b\u52a8\u7a97\u53e3\u53e5\u67c4<\/span>\r\nhandle = pyautogui.getActiveWindow()\r\n\r\n<span class=\"hljs-comment\"># \u83b7\u53d6\u7a97\u53e3\u7684\u4f4d\u7f6e\u548c\u5927\u5c0f<\/span>\r\nx, y, width, height = pyautogui.getWindowGeometry(handle)\r\n\r\n<span class=\"hljs-comment\"># \u79fb\u52a8\u7a97\u53e3\u5230\u6307\u5b9a\u4f4d\u7f6e<\/span>\r\nnew_x = <span class=\"hljs-number\">100<\/span>\r\nnew_y = <span class=\"hljs-number\">100<\/span>\r\npyautogui.moveWindow(handle, new_x, new_y)\r\n\r\n<span class=\"hljs-comment\"># \u8c03\u6574\u7a97\u53e3\u5927\u5c0f<\/span>\r\nnew_width = <span class=\"hljs-number\">800<\/span>\r\nnew_height = <span class=\"hljs-number\">600<\/span>\r\npyautogui.resizeWindow(handle, new_width, new_height)\r\n<\/code><\/pre>\n<p>In this example, we begin by using pyautogui.getActiveWindow() to obtain the handle of the current active window, then use pyautogui.getWindowGeometry(handle) to retrieve the position and size of the window. Next, we utilize the functions pyautogui.moveWindow() and pyautogui.resizeWindow() to move and resize the window.<\/p>\n<p>Please note that the pyautogui library needs to be installed using pip. You can use the following command to install it:<\/p>\n<pre class=\"post-pre\"><code>pip install pyautogui\r\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>You can use the pyautogui library in Python to obtain window handles and control windows. Below is an example code showing how to retrieve the current window handle and control the window&#8217;s position and size. import pyautogui # \u83b7\u53d6\u5f53\u524d\u6d3b\u52a8\u7a97\u53e3\u53e5\u67c4 handle = pyautogui.getActiveWindow() # \u83b7\u53d6\u7a97\u53e3\u7684\u4f4d\u7f6e\u548c\u5927\u5c0f x, y, width, height = pyautogui.getWindowGeometry(handle) # \u79fb\u52a8\u7a97\u53e3\u5230\u6307\u5b9a\u4f4d\u7f6e new_x = 100 [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[10279,10238,72,8315,10278],"class_list":["post-7870","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-gui-automation","tag-pyautogui","tag-python","tag-window-control","tag-window-handles"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Python Window Handles: Control with PyAutoGUI - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn to retrieve and control window handles in Python using pyautogui. Example code for position\/size control.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python Window Handles: Control with PyAutoGUI\" \/>\n<meta property=\"og:description\" content=\"Learn to retrieve and control window handles in Python using pyautogui. Example code for position\/size control.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-14T07:11:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-02T21:48:33+00:00\" \/>\n<meta name=\"author\" content=\"Jackson Davis\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jackson Davis\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/\"},\"author\":{\"name\":\"Jackson Davis\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350\"},\"headline\":\"Python Window Handles: Control with PyAutoGUI\",\"datePublished\":\"2024-03-14T07:11:49+00:00\",\"dateModified\":\"2025-08-02T21:48:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/\"},\"wordCount\":111,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"GUI automation\",\"PyAutoGUI\",\"Python\",\"Window Control\",\"window handles\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/\",\"name\":\"Python Window Handles: Control with PyAutoGUI - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-14T07:11:49+00:00\",\"dateModified\":\"2025-08-02T21:48:33+00:00\",\"description\":\"Learn to retrieve and control window handles in Python using pyautogui. Example code for position\/size control.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python Window Handles: Control with PyAutoGUI\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350\",\"name\":\"Jackson Davis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g\",\"caption\":\"Jackson Davis\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/jacksondavis\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Python Window Handles: Control with PyAutoGUI - Blog - Silicon Cloud","description":"Learn to retrieve and control window handles in Python using pyautogui. Example code for position\/size control.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/","og_locale":"en_US","og_type":"article","og_title":"Python Window Handles: Control with PyAutoGUI","og_description":"Learn to retrieve and control window handles in Python using pyautogui. Example code for position\/size control.","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-14T07:11:49+00:00","article_modified_time":"2025-08-02T21:48:33+00:00","author":"Jackson Davis","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Jackson Davis","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/"},"author":{"name":"Jackson Davis","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350"},"headline":"Python Window Handles: Control with PyAutoGUI","datePublished":"2024-03-14T07:11:49+00:00","dateModified":"2025-08-02T21:48:33+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/"},"wordCount":111,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["GUI automation","PyAutoGUI","Python","Window Control","window handles"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/","name":"Python Window Handles: Control with PyAutoGUI - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-14T07:11:49+00:00","dateModified":"2025-08-02T21:48:33+00:00","description":"Learn to retrieve and control window handles in Python using pyautogui. Example code for position\/size control.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-retrieve-and-control-window-handles-in-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Python Window Handles: Control with PyAutoGUI"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350","name":"Jackson Davis","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g","caption":"Jackson Davis"},"url":"https:\/\/www.silicloud.com\/blog\/author\/jacksondavis\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/7870","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=7870"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/7870\/revisions"}],"predecessor-version":[{"id":152665,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/7870\/revisions\/152665"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=7870"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=7870"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=7870"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}