Developing with S3: AWS with Python and Boto3 Series

person icon Niyazi Erdogan

Developing with S3: AWS with Python and Boto3 Series

Learn multi-part file uploads, host a static website, use Route53 to route traffic to your S3 website and much more!

updated on icon Updated on Sep, 2023

language icon Language - English

person icon Niyazi Erdogan

architecture icon Development,AWS,Python


30-days Money-Back Guarantee

Training 5 or more people ?

Get your team access to 19,000+ top Tutorialspoint courses anytime, anywhere.

Course Description

  • S3 is by far the most popular AWS service out there and the demand is only increasing! Most of the Fortune 500 companies, mid-size companies and startups are making use of it heavily!
  • If you want to learn ins and outs of S3 and how to implement solutions with S3, come join me in this course! 

S3 is Simple Storage Service from AWS and has many great features you can make use of in your applications and even in your daily life! You can use S3 to host your memories, documents, important files, videos and even host your own website from there!

Join me in this journey to learn ins and outs of S3 to gain all the necessary information you need to work with S3 using Python and Boto3!

 Let’s take a closer look at what we’re going to cover in this course step-by-step.

  • In this course, we’ll start of with what we’ll build throughout the course and what you need to have on your computer to follow along with me.

  • Don’t worry; I’ll explain everything you need very clearly and I’ll show you what you need to install and setup on your computer to work with S3. There will be two different sections for Windows and MacOS users. These sections are basically identical and show how you can prepare your computer environment to be ready to work with S3! I’ll show you how to install Python, Boto3 and configure your environments for these tools. I’ll also show you how you can create your own AWS account step-by-step and you’ll be ready to work AWS in no time!

  • When we’re done with preparing our environment to work AWS with Python and Boto3, we’ll start implementing our solutions for AWS.

  • First and foremost, we’ll create a Bucket; Bucket is the fundamental part of S3 and its designed all-around buckets. We’ll build on top of that by adding a Bucket Policy. With bucket policies, you can decide who accesses and can do what on your bucket and objects inside it. Then we’ll learn how to do basic operations around buckets like listing the buckets, getting bucket properties, Encrypting Bucket Objects with Server-Side Encryption and much more!

  • Then we’ll move on to another important part of working with S3 and that is uploading. We’ll start of with learning how to upload a small file to S3. You’ll learn how easy it is to do so. Next up is Multi-Part Upload for large files! I’ll show you how to implement Multi-Part Uploads and make use threading and parallelization so you can boost the upload speeds for your objects!

  • Versioning is another key aspect of S3 and it has various benefits. For example, with versioning enabled, your objects are near impossible to delete so you won’t lose them with accidental deletes! Versioning provides a safe-way to version your files so you upload onto to the same object over and over again and keep track of all along the process! I’ll show you how you can enable versioning on your buckets and how you can upload new versions for your objects.

  • We’ll also configure lifecycle policies for our buckets to manage our objects present and the future. With lifecycle policies, you can decide when and what to do with your objects. For example, you can decide to move your unused files to a cheaper storage class like Glacier. So I’ll show you how you can design your own lifecycle policies on your buckets and objects and apply them with your code.

  • And here comes S3 Static Website Hosting! Apart from many other great benefits of using S3, you can use it to store your static HTML, Javascript and CSS based websites on it! S3 even gives you a URL so everyone can access it anywhere in the world! We’ll not stop there of course; we’ll learn that Route53 can be used to route traffic to our S3-Hosted Website using our own custom domain!

  • So we’ll implement our S3 Static Website Hosting from scratch. We’ll design a simple website and configure it as a website inside our Bucket. Once we have our website up and running and accessible via a URL, we’ll move on to Route53 to configure our own Domain Name or DNS to route traffic to our S3 Hosted Website from our own custom domain!

Again, S3 is an amazing service from AWS and there are hundreds of ways you can make use of it. Let’s not lose more time and jump right into the implementation with S3 so I’ll see you in the course!

Who this course is for:

  • Beginners on AWS who wants to put their theory in practice
  • AWS Cloud Architect Associate Exam Preppers who wants to practice their theories with real projects
  • Who wants to learn how to Host Static Websites with S3!
  • Who wants to learn Multi-Part Upload!
  • Who wants to learn how to work with S3
  • Who wants to learn how to implement Infrastructure-as-a-Code or IaaS on AWS
  • Who wants to learn how to develop infrastructures on AWS using Python
  • Who wants to learn AWS Python API or namely Boto3


What will you learn in this course:

  • You'll be able to host your own website with S3!
  • You'll be able to upload any-size file to S3 by implementing Multi-Part Upload!
  • You'll learn and be able to use a real domain of yours using Route53 on S3 to route traffic to your website!
  • You'll learn how to create buckets, upload files, apply lifecycle policies and much more!
  • You'll be able to implement any sort of infrastructure with S3 on AWS with Python!
  • You'll be confident to work with AWS APIs using Python for any kind of AWS Resource on S3!
  • You'll learn how to code against AWS API using Python and Boto3!


What are the prerequisites for this course?

  • Little to no experience with Python
  • Any Python interpreter. Default is fine but I recommend PyCharm
  • An AWS Account - Free Tier Available!
  • General knowledge on AWS would be nice
  • Not necessary but theoretical knowledge on S3 would be nice!
Developing with S3: AWS with Python and Boto3 Series


Check out the detailed breakdown of what’s inside the course

5 Lectures
  • play icon Source Code
  • play icon Introduction 00:58 00:58
  • play icon About This Course 04:07 04:07
  • play icon What We Will Build in This Course 02:32 02:32
  • play icon What Do You Need For This Course 04:24 04:24
Preparing The Environment for Development
5 Lectures
Windows Environment Setup
4 Lectures
MacOS Environment Setup
4 Lectures
Simple Storage Service (S3) with Boto3: Bucket Operations
8 Lectures
Simple Storage Service (S3) with Boto3: Object Operations
7 Lectures
Simple Storage Service (S3) with Boto3: Static Website Hosting
3 Lectures
Wrapping Up
1 Lectures

Instructor Details

Niyazi Erdogan

Niyazi Erdogan

Senior Software Engineer

Course Certificate

User your certification to make a career change or to advance in your current career. Salaries are among the highest in the world.

sample Tutorialspoint certificate

Our students work
with the Best


Related Video Courses

View More

Annual Membership

Become a valued member of Tutorials Point and enjoy unlimited access to our vast library of top-rated Video Courses

Subscribe now
People having fun around a laptop

Online Certifications

Master prominent technologies at full length and become a valued certified professional.

Explore Now
People having fun around a laptop

Talk to us