{"id":1342,"date":"2017-04-15T17:58:00","date_gmt":"2017-04-15T12:28:00","guid":{"rendered":"https:\/\/pheonixsolutions.com\/blog\/?p=1342"},"modified":"2026-09-18T16:56:17","modified_gmt":"2026-09-18T11:26:17","slug":"install-python-pip-boto-windows-server","status":"publish","type":"post","link":"https:\/\/pheonixsolutions.com\/blog\/install-python-pip-boto-windows-server\/","title":{"rendered":"How to Install Python, pip, and Boto on Windows Server"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>Post Date:<\/strong> April 15, 2017<br><strong>Last Updated:<\/strong> September 18, 2026<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introduction<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Python is a widely used programming language for scripting, automation, and cloud administration. When working with AWS resources, Python can be used with AWS-related libraries to automate and manage cloud services.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This guide explains the original setup process for installing:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Python 3<\/li>\n\n\n\n<li>pip, the Python package installer<\/li>\n\n\n\n<li>Boto, a Python library for working with AWS resources<\/li>\n\n\n\n<li>Nano editor as an optional command-line editor<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Prerequisites<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Before starting, make sure you have:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A Windows Server host.<\/li>\n\n\n\n<li>Administrator or appropriate PowerShell privileges.<\/li>\n\n\n\n<li>Internet connectivity from the server.<\/li>\n\n\n\n<li>PowerShell access.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Implementation<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Configure PowerShell Execution Policy<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Open <strong>PowerShell<\/strong> and set the execution policy for the current user:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Set-ExecutionPolicy -Scope CurrentUser<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">When prompted, enter:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">RemoteSigned<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This allows locally created scripts to run while requiring downloaded scripts to be appropriately signed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2: Create a WebClient Object<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Create a .NET WebClient object in PowerShell:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$script = New-Object Net.WebClient<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The original procedure uses this object to download the Chocolatey installation script.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3: Download the Chocolatey Installation Script<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Chocolatey is a package manager for Windows and provides a command-line approach for installing software packages.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The original article used:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$script.DownloadString(\"https:\/\/chocolatey.org\/install.ps1\")<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The original installation command was:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">iwr https:\/\/chocolatey.org\/install.ps1 -UseBasicParsing | iex<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Where:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>iwr<\/code> is an alias for <code>Invoke-WebRequest<\/code>.<\/li>\n\n\n\n<li><code>iex<\/code> is an alias for <code>Invoke-Expression<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Step 4: Install Python 3<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Once Chocolatey is available, the original procedure installs Python 3 using:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">choco install -y python3<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The original article expected Python to be installed under:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">C:\\Python3\\python.exe<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">However, the actual installation path can vary depending on the Python and Chocolatey versions being used.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Verify Python Installation<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Check the installed Python version:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">python -V<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">You should receive output showing the installed Python version, for example:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Python 3.x.x<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">You can also verify that Python is available through the system <code>PATH<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 5: Verify pip<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><code>pip<\/code> is the package installer used to install Python libraries.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check whether pip is available:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pip --version<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If Python was installed through a current Python distribution or package manager, pip may already be installed with Python.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 6: Install Boto<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Boto is a Python library that provides an interface for working with AWS resources.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The original article used the following procedure.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Change to the Python installation directory:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cd C:\\Python3<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Then install Boto using pip:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pip.exe install boto<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Verify that the package was installed:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pip show boto<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To install Boto3 in a current Python environment:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">python -m pip install boto3<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">You can verify it with:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">python -m pip show boto3<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Optional: Install Nano on Windows<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The original article also covered installing the <strong>Nano<\/strong> command-line text editor.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If Chocolatey is available, the original command was:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">choco install -y nano<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Nano can be useful for users who are familiar with Linux command-line editors and want a similar editing experience on Windows.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Verification Checklist<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After completing the installation, verify the main components:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Check Python<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">python -V<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Check pip<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pip --version<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Check Boto<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">For the legacy Boto package:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pip show boto<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">For current AWS Python development:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">python -m pip show boto3<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Check Chocolatey<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">choco --version<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Python provides a flexible environment for scripting and automation on Windows Server. The original setup uses Chocolatey to install Python 3 and pip, followed by the Boto library for interacting with AWS resources.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For legacy environments that require the original Boto package, the procedure described above can be used as a reference. For new AWS automation projects, <strong>Boto3 should be preferred over the older Boto package<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Always verify the Python version, pip installation, and AWS SDK package after completing the setup.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Frequently Asked Questions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. What is pip?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>pip<\/code> is Python&#8217;s package installer. It is used to install and manage Python packages and libraries.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">python -m pip install boto3<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2. What is Boto?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Boto is an older Python library for interacting with AWS services. It has largely been superseded by Boto3 for modern AWS development.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Should I install Boto or Boto3?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">For new Python applications and AWS automation, <strong>Boto3<\/strong> should generally be used. The original <code>boto<\/code> package may still be required by older applications.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. Can Python be installed without Chocolatey?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Yes. Chocolatey is a package-management option and is not required for Python itself. Python can also be installed using the appropriate current Python distribution or an organization&#8217;s approved software deployment method.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. How can I check which Python version is installed?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Run:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">python -V<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">You can also check pip with:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">python -m pip --version<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Related Articles<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/pheonixsolutions.com\/blog\/a-simple-guide-to-handling-csv-files-in-python\/\">A Simple Guide to Handling CSV Files in Python<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/pheonixsolutions.com\/blog\/python-variables-and-operators\/\">Python \u2013 Variables and Operators<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Talk to our experts<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Have a technology challenge or looking for the right solution for your business? Our team can help you with <strong>cloud, DevOps, development, infrastructure, design, and more<\/strong>. Feel free to reach out to our experts <a href=\"https:\/\/pheonixsolutions.com\/contact\">here<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Post Date: April 15, 2017Last Updated: September 18, 2026 Introduction Python is a widely used programming language for scripting, automation, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[1019],"tags":[322,321,292,35],"class_list":["post-1342","post","type-post","status-publish","format-standard","hentry","category-cloud-aws","tag-boto","tag-choco","tag-python","tag-windows","psol-cat-cloud-aws"],"jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/phn2x7-lE","jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/1342","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/comments?post=1342"}],"version-history":[{"count":1,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/1342\/revisions"}],"predecessor-version":[{"id":11839,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/1342\/revisions\/11839"}],"wp:attachment":[{"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/media?parent=1342"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/categories?post=1342"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/tags?post=1342"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}