Python Automation Made Easy!
What you'll learn
- Write Python code proficiently in a structured fashion
- Identify the boundaries of a coding problem and spot the best libraries to solve it
- Design and Implement a wide range of applications from simple stand-alone one-liner scripts to complex web applications depending on external services
- Explore different tools used for the automation.
- Understand enterprise automation with using python scripting.
- Perform administrative tasks like user, database and process management using automation.
Course content
- Preview04:35
- 02:59The Benefits of Using Proper Programmer Tools
- 04:34Installing and Configuring PyCharm
- 08:31Keep Your Work Warm (and Safe) Using Git
- 06:10Setup of a Sample Python Project
- Preview04:19
- 05:42The Python Standard Library
- 03:46Searching for the Right Library to Do the Job
- 05:18Using Pip to Install Libraries
- 05:52Using Virtualenv to Isolate Environments
- 07:03Logging
- 06:40Regular Expressions
- 06:47Function Decorators and Context Managers
- 05:43Generator Expressions and Generators
- 05:58Magic Methods
- 06:39Metaprogramming
- 07:15Functional Programming
- 05:35Pythonic Code Idioms
- 08:42Walking and Filtering Folder Contents
- 12:24Renaming Files and Folders Based on Regular Expressions
- 11:14Detecting File Modifications Using Diffs and Hashes
- 08:53Compressing and Decompressing Files
- 13:02Encrypting Files with PyCryptodome
- 06:45Reading and Writing Files
- 06:30CSV
- 07:37XML
- 07:36JSON and YAML
- 10:00Word DOCX
- 09:33Excel XLSX
- 08:14PDF
- 06:25Reading and Showing Images with Pillow
- 06:45Cropping and Resizing Images
- 06:26Basic Image Filtering
- 08:14Image Watermarking
- 03:32Taking a Screenshot
- 06:02Parsing QR Codes
- 09:20Recognizing Faces in Pictures
- 11:35Downloading Web Content to Your Local Host Using Requests
- 13:27Scraping Websites Content with Beautifulsoup
- 10:26Scripting Your Browser with Selenium
- 06:13Working with APIs
- 15:51Learning How to Interact with httpbin Test Service
- 10:02Fetching Cryptocurrencies Market Prices from the Coinmarketcap API
- 14:45Retrieving Weather Forecasts from the OpenWeatherMap API with PyOWM Client
- 15:29Reading and Sending Emails with Gmail
- 08:25Tweeting a Positive Message to the World with Twithon
- 14:02Tracking all of Your Personal Notes Using the Evernote API
- 07:52Watching for Topics on the Python Reddit RSS Feed
- 12:52Using Firebase Cloud Messaging to Send a Push Notification to Your Android Apps
- 05:25Sending a Text SMS via Twilio with Twilio Client
- 10:25Backing Up on Dropbox Your Local Data Folders with Dropbox Client
- 05:39Introduction to Web Applications
- 09:32Web Applications Fundamentals
- 07:53Using MVC Frameworks
- 12:30Meet Flask and Django
- 10:24Starting Up the Project
- 11:42Preparing the Static Pages
- 17:21Coding the Flask Views
- 11:24Creating a Protected Area and Handling User Authentication with a Credential For
- 11:51Testing the Website
- 12:01How a Database Works
- 06:00SQLite, a Python-Friendly Database
- 22:05Creating and Querying a Sample Dataset on SQLite
- 07:22Object-Relational Mappers: Mapping Database Tables to Objects
- 16:12Exploring a Simple Data Model Through the Django ORM
- 08:59Designing the Data Model
- 09:45Designing the API Endpoints
- 16:35Coding the Django Models and Setting Up the SQLite Database
- 17:12The Django Admin
- 27:33Coding the Django Views and Setting URL Routes
- 11:51Putting It All Together and Testing with HTTPie
- 07:40Designing a Bot That Can Answer Questions About Cryptocurrency Prices
- 17:50Bot Behavior and Endpoints
- 15:33Deploy the Bot on Heroku
- 16:47Bind the Bot to a Facebook Page and Test It
- 07:24Installing Jupyter and Managing a Notebook
- 17:02Pandas Data Structures
- 09:07Reading and Writing Datasets
- 17:07Cleaning and Manipulating Datasets
- 22:11Visualizing Datasets
- 10:08Building a Cryptocurrency Prices Dataset
- 12:57Calculating Moving Averages of Crypto Prices
- 15:13Better Visualizations for Crypto Prices
- 21:16Revealing Trends in Crypto Market
- 5 questionsTest your knowledge
Requirements
- Basic programming knowledge with Python scripting would be necessary
Description
Python is an easy to learn, powerful programming language with efficient high-level data structures and a simple but effective approach to object-oriented programming. Python’s elegant syntax and dynamic typing, together with its interpreted nature, make it an ideal language for scripting and rapid application development in many areas on most platforms.
This is an easy to follow, practical approach course, designed to guide you in implementing real-world
automation in your enterprise using python. Initially you will be you will start with a deep-dive into Python software development basics, then you'll move on to write scripts to automate file system operations and file contents processing on your local host. Learn network automation & administration tasks with Python Fabric to automate the execution of web server with simple python programs. Moving forward you will also you will be creating users on multiple servers to manage users and then check the health of the Enterprise and then you will be performing automation tasks on the cloud infrastructure with python. Finally, you will leverage Python programming to automate server configuration and administration tasks.
Contents and Overview
This training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, Python for Everyday Life start with a deep-dive into Python software development basics, then move on to write scripts to automate file system operations and file contents processing on your local host, then you will learn how to interact with web-based services such as websites and APIs in order to robotize the cool things that we do everyday - such as tweeting, posting to social networks, reading RSS feeds, etc. - moreover you will practice how to set up a web-based services yourself in the form of web applications and in the end you will learn how to analyze and visualize datasets in order to extract knowledge. By the end of this course you will have learned how to proficiently write structured Python code in a wide range of applications – from one-liner scripts to complex web applications – aiming at the automation of lots of common everyday life tasks.
The second course, Enterprise Automation with Python will start by introducing the modules and the tools we will be using and how to set up a python environment to perform automation tasks and to deal with file editors and IDE like Pycharm. The course will cover network automation tasks and administration tasks with Python Fabric to automate the execution of web server with simple python programs. Moving ahead, you will learn to create database servers with python and backup them. Also, you will be creating users on multiple servers to manage users and then check the health of the Enterprise and then you will be performing automation tasks on the cloud infrastructure with python. The course will make the most of Python libraries and modules to automate your infrastructure. Leverage Python programming to automate server configuration and administration tasks. By the end of the course, you will be able to efficiently develop your python skills making it an alternate automation tool from the major automation frameworks.The use cases in this course will help you to track the processes with high utilization on all servers and create web server via python code. So, now need not depend on Network Automation Tools like a puppet, Ansible, and chef and grab this course to make your daily work easy with automation and python modules which will help you to deliver the service more faster than before.
About the Authors:
Claudio Sparpaglione holds an MD in Computer Engineering from Università degli studi di Pavia, Italy, achieved in 2007. He later worked as software engineer and architect in various industries (Geospatial Application Systems development and integration, Web and Mobile Advertising, Telecommunications, Fashion Brand Protection).Claudio worked in London in 2014 for a UK start-up as a software engineer and in 2015 became CTO of an Italian start-up. He currently works for the largest Italian bank as application engineer and deals with innovation topics.
Claudio is a Pythonista with exposure to other languages (JavaScript, Java, and PHP). He’s passionate about the design and implementation of highly-scalable web systems and APIs, about cloud, mobile and scientific computing, and he’s fascinated by cryptocurrencies. Claudio is a Linux advocate and an active contributor to the open source software community: he’s the maintainer of the PyOWM Python project and contributes to projects such as Requests and Reactive Manifesto.
Tomasz Lelek is a Software Engineer who programs mostly in Java and Scala. He is a fan of microservice architectures and functional programming. He dedicates considerable time and effort to be better every day. Recently, he's been delving into big data technologies such as Apache Spark and Hadoop. He is passionate about nearly everything associated with software development.Tomasz thinks that we should always try to consider different solutions and approaches to solving a problem. Recently, he was a speaker at several conferences in Poland - Confitura and JDD (Java Developer's Day) and also at Krakow Scala User Group.
Who this course is for:
- This course is ideal for:
- Python developers with basic knowledge of python.
- System administrator or DevOps engineer at the enterprise who wants to facilitate the work through python and are looking for an alternative from major automation frameworks like Puppet and Chef
Instructor
Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.
With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.
From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.
Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.