Author: Trix Cyrus
Waymap Pentesting tool: Click Here
TrixSec Github: Click Here
In Part 1, we explored how to use Python to automate file management, web scraping, sending emails, Google Sheets, and system monitoring. In Part 2, we will continue by covering more advanced tasks like automating APIs, scheduling scripts, and integrating automation with third-party services.
7. Automating API Requests
Many web services provide APIs to interact with their platforms programmatically. Using the requests library, you can easily automate tasks like fetching data from APIs, posting updates, or performing CRUD operations on cloud services.
import requests # OpenWeatherMap API configuration api_key = 'your_api_key' city = 'New York' url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}' # Send a GET request to fetch weather data response = requests.get(url) data = response.json() # Extract temperature information temperature = data['main']['temp'] weather = data['weather'][0]['description'] print(f"Temperature: {temperature}°K") print(f"Weather: {weather}")
This script fetches the current weather data for a specified city from the OpenWeatherMap API and displays it.
8. Scheduling Tasks with Python
Sometimes you need to automate tasks to run at specific times or intervals. Python's schedule library makes it easy to set up jobs that run automatically at certain times.
import schedule import time # Task function to be executed def task(): print("Executing scheduled task...") # Schedule the task to run every day at 9 AM schedule.every().day.at("09:00").do(task) # Keep the script running to check the schedule while True: schedule.run_pending() time.sleep(1)
This script schedules a task to run every day at 9 AM, using a simple scheduling loop to keep the task running.
9. Automating Database Operations
Python can be used to interact with databases, automate data entry, and perform operations like reading, updating, and deleting records. The sqlite3 module allows you to manage SQLite databases, while other libraries (like psycopg2 or MySQLdb) work with PostgreSQL and MySQL.
import sqlite3 # Connect to SQLite database conn = sqlite3.connect('tasks.db') # Create a cursor object to execute SQL commands cur = conn.cursor() # Create a table for storing tasks cur.execute('''CREATE TABLE IF NOT EXISTS tasks (id INTEGER PRIMARY KEY, task_name TEXT, status TEXT)''') # Insert a new task cur.execute("INSERT INTO tasks (task_name, status) VALUES ('Complete automation script', 'Pending')") # Commit changes and close the connection conn.commit() conn.close()
This script creates an SQLite database, adds a "tasks" table, and inserts a new task into the database.
10. Automating Excel File Management
Python, along with the openpyxl or pandas libraries, can be used to automate reading, writing, and modifying Excel files. This is especially useful for automating data analysis and reporting tasks.
import pandas as pd # Read Excel file df = pd.read_excel('data.xlsx') # Perform some operation on the data df['Total'] = df['Price'] * df['Quantity'] # Write the modified data back to a new Excel file df.to_excel('updated_data.xlsx', index=False)
This script reads an Excel file, performs a calculation on the data, and writes the updated data to a new file.
11. Automating Browser Interactions with Selenium
Using Selenium, Python can automate interactions with web browsers such as logging into accounts, filling forms, and performing repetitive web tasks.
from selenium import webdriver from selenium.webdriver.common.keys import Keys # Set up the browser driver driver = webdriver.Chrome() # Open the login page driver.get('https://example.com/login') # Locate the username and password fields, fill them in, and log in username = driver.find_element_by_name('username') password = driver.find_element_by_name('password') username.send_keys('your_username') password.send_keys('your_password') password.send_keys(Keys.RETURN) # Close the browser driver.quit()
This script opens a web browser, navigates to a login page, fills in the credentials, and logs in automatically.
12. Automating Cloud Services
Python integrates well with cloud services like AWS, Google Cloud, and Azure. Using the boto3 library, you can automate tasks like managing S3 buckets, EC2 instances, and Lambda functions in AWS.
import requests # OpenWeatherMap API configuration api_key = 'your_api_key' city = 'New York' url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}' # Send a GET request to fetch weather data response = requests.get(url) data = response.json() # Extract temperature information temperature = data['main']['temp'] weather = data['weather'][0]['description'] print(f"Temperature: {temperature}°K") print(f"Weather: {weather}")
This script connects to AWS S3, lists all buckets, creates a new bucket, and uploads a file to it.
13. Automating PDF Manipulation
Using the PyPDF2 library, Python can automate tasks like merging, splitting, and extracting text from PDF files.
import schedule import time # Task function to be executed def task(): print("Executing scheduled task...") # Schedule the task to run every day at 9 AM schedule.every().day.at("09:00").do(task) # Keep the script running to check the schedule while True: schedule.run_pending() time.sleep(1)
This script merges multiple PDF files into a single file.
~Trixsec
The above is the detailed content of How to Automate Everyday Tasks with Python (Part 2). For more information, please follow other related articles on the PHP Chinese website!