10 скриптов автоматизации Python для решения ваших повседневных задач.
Несколько скриптов для автоматизации ваших повседневных задач. Нижу будет приведен полный код Python программ.
Почему в эпоху программирования мы все еще делаем то, что можем автоматизировать. Подумайте о задачах, которые вы повторяете ежедневно или ежедневных проектах, требующих автоматизации, таких как чтение электронной почты, редактирование изображений, чтение PDF и т. д. В этой статье мы рассмотрим 10 скриптов автоматизации для ваших повседневных задач.
Автоматизация решает проблему один раз, а затем ставит ее на автопилот
— Майкл Хаятт
👉 Автоматизируем отправку электронной почты с помощью Python
Этот потрясающий скрипт автоматизации позволит вам читать и отправлять электронные письма, будь то Outlook, Gmail или любой другой почтовый сервер. Ниже пример кода, который разделен на две части.
Чтение электронной почты и отправка электронной почты использует модуль IMAP для чтения электронных писем, а другой использует модуль SMTP для отправки электронной почты, ниже приведен код:
# Automate Emails with Python
import imaplib
import email
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# Read Email
Email = imaplib.IMAP4_SSL('imap.gmail.com')
Email.login('your_username', 'your_password')
status, msgs = Email.select('INBOX')
print("Status: ", status)
for i in range(1, int(msgs[0])):
res, message = Email.fetch(str(i), '(RFC822)')
for r in message:
if isinstance(r, tuple):
message = email.message_from_bytes(r[1])
print (message["subject"])
---------------------------------------------------
# Send Email
Your_Email = "test@xyz.com"
password = "your_password"
reciver = "Sender Mail"
subject = "Medium Article"
text_msg = "Hi, Codedev010 here from Medium Article"
msg = MIMEMultipart()
msg["From"] = Your_Email
msg["To"] = reciver
msg["Subject"] = subject
msg.attach(MIMEText(text_msg, 'plain'))
server = smtplib.SMTP("smtp.gmail.com", 587)
server.starttls()
server.login(Your_Email, password)
MSG = msg.as_string()
server.sendmail(Your_Email, reciver, MSG)
server.quit()
172 / 5 000
Результаты перевода
star_border
👉 Редактор изображений на Python
Используйте этот скрипт автоматизации для программного редактирования изображений. Ниже я приводу общие функции для редактирования изображений, такие как размытие, поворот, объединение изображений и т. д.
# Редактор изображений
# pip install pillow
from PIL import Image
from PIL import ImageDraw
# Combine Image
img1 = Image.open('img101.jpg')
img2 = Image.open('img102.jpg')
combine = Image.blend(img1, img2, 0.5)
# Resize Image
resize = Image.open('img101.jpg')
resize = resize.resize((300, 300))
# Flip an Image
flip_image = Image.open('img101.jpg')
flip_image = flip_image.transpose(Image.FLIP_LEFT_RIGHT)
# Blur an Image
blur_image = Image.open('img101.jpg')
blur_image = blur_image.filter(Image.BLUR)
# Add Drop Shadow
shadow_image = Image.open('img101.jpg')
shadow_image = shadow_image.filter(Image.EDGE_ENHANCE_MORE)
# Crop an Image
crop_image = Image.open('img101.jpg')
crop_image = crop_image.crop((50, 50, 300, 200))
#Add Brightness
bright_image = Image.open('img101.jpg')
bright_image = bright_image.point(lambda p: p + 50)
# Add Text to Image
text_image = Image.open('img101.jpg')
text_image = text_image.convert('RGB')
draw = ImageDraw.Draw(text_image)
draw.text((10, 10), "Hello World", (255, 255, 255))
# Rotate an Image
rotate_image = Image.open('img101.jpg')
rotate_image = rotate_image.rotate(90)
# Save Image
img1.save('img101.jpg')
👉 Редактор аудио на Python
Этот скрипт автоматизации будет редактировать аудио файлы. Вы можете извлекать звуки, объединять их, воспроизводить, разделять/вырезать фрагменты аудио и многое другое. Скрипт использует модуль Pydub, который является модулем управления звуком. Код приведен ниже:
# Редактор аудио на Python
# pip install pydub
from pydub import AudioSegment
from pydub.utils import mediainfo
from pydub.playback import play
# Extract Sound from Video
sound = AudioSegment.from_file("video.mp4", format="mp4")
sound.export("music.mp3", format="mp3")
# Get Media Info
info = mediainfo("musci.wav")
print(info)
# Play Sound
play("music.mp3")
# Combine Sounds
sound1 = AudioSegment.from_file("music.mp3")
sound2 = AudioSegment.from_file("music.mp3")
combined = sound1 + sound2
combined.export("music_combined.mp3", format="mp3")
# Split Audio
sound = AudioSegment.from_file("music.mp3", format="mp3")
sound_1 = sound[:10000]
sound_2 = sound[10000:]
sound_1.export("music_1.mp3", format="mp3")
sound_2.export("music_2.mp3", format="mp3")
# Increase or Reduce Volumn
sound = AudioSegment.from_file("music.mp3", format="mp3")
sound_volumn = sound + 10
sound_volumn.export("music_volumn.mp3", format="mp3")
# Adding Silence to Audio
sound = AudioSegment.from_file("music.mp3", format="mp3")
sound_silence = sound + AudioSegment.silent(duration=1000)
sound_silence.export("music_silence.mp3", format="mp3")
👉 Установите пароль на ваши файлы
Вам нужно было скрыть свои файлы, чтобы никто не мог их прочитать, тогда этот скрипт автоматизации поможет вам. Скрипт использует метод криптографии для шифрования ваших файлов, и когда вам нужно их открыть, вы можете их расшифровать с кодом ниже. Это очень безопасный способ скрыть ваши файлы, потому что расшифровать файл без ключа невозможно.
https://t.me/pro_python_code – бесплатное обучение Python c нуля
# Lock Your Files
#pip install cryptography
from cryptography.fernet import Fernet
def Lock_file(file_name, key):
with open(file_name, 'rb') as file:
data = file.read()
f = Fernet(key)
encrypted_data = f.encrypt(data)
with open(file_name, 'wb') as file:
file.write(encrypted_data)
print("File Lock...")
def Unlock_file(file_name, key):
with open(file_name, 'rb') as file:
data = file.read()
f = Fernet(key)
decrypted_data = f.decrypt(data)
with open(file_name, 'wb') as file:
file.write(decrypted_data)
print("File Unlock...")
key = input("Enter the key: ")
Lock_file('test.txt', key)
Unlock_file('test.txt', key)
👉 Мобильные приложения на Python
Вы можете разрабатывать мобильные приложения с помощью Python. Модуль Kivy используется для разработки кроссплатформенных приложений, таких как Android, IOS и Win. В приведенном ниже коде будут важные виджеты Kivy, которые мы будем использовать для разработки приложения для начинающих.
Примечание. После того, как ваше приложение будет прочитано, вы можете собрать его Apk со следующим модулем: pip install buildozer
# Develop Mobile Apps with Kivy
# pip install kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.textinput import TextInput
from kivy.uix.gridlayout import GridLayout
from kivy.uix.scrollview import ScrollView
from kivy.uix.checkbox import CheckBox
from kivy.uix.image import Image
from kivy.uix.popup import Popup
class MobileApp(App):
def build(self):
# Layout of App
layout = BoxLayout(orientation="vertical")
# Label
label = Label(text="Hello Kivy!")
# Button
btn = Button(text="Click Me!")
# Button Action
btn.bind(on_press=self.btn_pressed)
# Input Box
input_box = TextInput(hint_text="Input Here",size_hint=(.3,.2))
# Check Box
check_box = CheckBox(text="Check Me!")
# ScrollView
scroll_view = ScrollView()
grid_layout = GridLayout(cols=2, size_hint_y=None)
grid_layout.bind(minimum_height=grid_layout.setter('height'))
# Add Image to App
image = Image(source="medium.png")
# Popup
popup = Popup(title="Popup", size_hint=(.5,.5))
# Add to layout
layout.add_widget(label)
layout.add_widget(btn)
layout.add_widget(input_box)
layout.add_widget(scroll_view)
layout.add_widget(check_box)
layout.add_widget(image)
layout.add_widget(popup)
return layout
def btn_pressed(self, instance):
print("Button Pressed!")
# Run the App
app = MobileApp()
app.run()
👉 Программа записи экрана Python
Теперь вы можете записывать экраны рабочего стола с помощью Python со скоростью 60 кадров в секунду. Этот скрипт автоматизации использует несколько модулей для выполнения своей работы, и это очень полезен для тех, кто хочет выполнять запись экрана программно.
import pyautogui
import numpy as np
import cv2
import keyboard
# pip install opencv-python
# pip install pyautogui
# pip install keyboard
# pip install numpy
def Screen_Recording():
while True:
# Press R to Start Recording
if keyboard.is_pressed('r'):
print("Recording Has been Started...")
# resolution
capture_area = (1920, 1080)
codec = cv2.VideoWriter_fourcc(*'mp4v')
filename = "Your_Recording.mp4"
# Frame per Second
fps = 60.0
output_video = cv2.VideoWriter(filename, codec, fps, capture_area)
while True:
image = pyautogui.screenshot()
Image_frame = np.array(image)
Image_frame = cv2.cvtColor(Image_frame, cv2.COLOR_BGR2RGB)
output_video.write(Image_frame)
cv2.waitKey(1)
# Press Q button to Stop recording
if keyboard.is_pressed('q'):
print("Recording Has been Stopped...")
break
output_video.release()
cv2.destroyAllWindows()
Screen_Recording()
👉 Проверка грамматики на Python
Проверка грамматики всегда сложна но этот скрипт автоматизации поможет вам. Этот удивительный скрипт использует модуль Gingerit, который подключен к API средства проверки Ginger Grammer, и второй модуль Streamlit для создания веб-приложений с меньшим количеством кода. Это удобный скрипт, когда у вас есть много текста или данных, которые нужно проверить программно.
# Proofreading with Pyton
# pip install gingerit
# pip install streamlit
from gingerit.gingerit import GingerIt
import streamlit as webapp
app = GingerIt()
webapp.title('Proofreading in Python')
Text = webapp.text_area("Enter Your Text or Sentence:", value='', height=None, max_chars=None, key=None)
if webapp.button('Correct Sentence'):
if Text == '':
webapp.write('Please enter text for proofreading')
else:
correction = app.parse(Text)
webapp.markdown('Corrected Text => ' + str(correction["result"]))
👉 Извлечение текста из PDF с Python
Этот скрипт просто извлечет текст из вашего PDF. Этот скрипт очень удобен для разработчиков и людей, которые ищут автоматизированный способ извлечения содержимого таблицы из файлов PDF. Потому что никто не любит сидеть и извлекать строки одну за другой из нескольких pdf. Проверьте код ниже:
# Extract Tables from Camelot
# pip install camelot-py
import camelot
table = camelot.read_pdf('test.pdf', pages='1-2')
# get total number of tables
print("Total tables: ", table.n) # 2
# print table by num
print(table[0].df)
print(table[1].df)
# Export Table to CSV
table[0].to_csv('table1.csv')
table[1].to_csv('table2.csv')
# Export Table to Excel
table[0].to_excel('table1.xlsx')
# Export Table to HTML
table[0].to_html('table1.html')
# Extract and Export Table At Once
table.export('tables.csv', f='csv', compress=True)
# Parse Table Report
table[0].parse(['Date', 'Description', 'Amount'])
👉 Автоматизируем работу MS Excel, Word и PowerPoint
Думали ли вы, что с помощью Python можно также автоматизировать программное обеспечение MS Office? Тогда этот скрипт позволит вам это сделать. Скрипт разделен на три части, и каждая часть имеет модуль для чтения и записи данных в программном обеспечении MS.
# Автоматизируем работу MS Excel, Word и PowerPoint
# pip install xlrd
import xlrd
wb = xlrd.open_workbook('test.xlsx')
worksheet = wb.sheet_by_index(0)
# Read by row and col number
print(worksheet.cell_value(0, 0))
# read whole row
print(worksheet.row_values(0))
# read whole col
print(worksheet.col_values(1))
# Write to excel by row and col number
worksheet.write(0, 0, 'Hello')
wb.save('test.xlsx')
-------------------------------------------------
# Automate MS WORD
# pip install python-docx
import docx
doc = docx.Document("zen_of_python.docx")
# read paragraph by paragraph
text = [p.text for p in doc.paragraphs]
print(text)
# read table by table
for table in doc.tables:
for row in table.rows:
for cell in row.cells:
print(cell.text)
# Write in Doc
doc.add_paragraph("Hello World")
doc.save("test.docx")
-------------------------------------------------
# Automate PowerPoint
# pip install python-pptx
from pptx import Presentation
# Read Slides
PP = Presentation('file.pptx')
for slide in PP.slides:
for shape in slide.shapes:
for paragraph in shape.text_frame.paragraphs:
for data in paragraph.runs:
print(data.text)
# Write in PPT
PP = Presentation()
title_slide_layout = PP.slide_layouts[0]
slide = PP.slides.add_slide(title_slide_layout)
title = slide.shapes.title
title.text = "Medium Article"
PP.save('file.pptx')
👉 Преобразовываем Изображение в PDF с Python
Этот простой скрипт автоматизации поможет вам преобразовать ваши изображения в формат PDF.
# Images to Python
from PIL import Image
def Images_Pdf(filename, output):
images = []
for file in filename:
im = Image.open(file)
im = im.convert('RGB')
images.append(im)
images[0].save(output, save_all=True, append_images=images[1:])
Images_Pdf(["test1.jpg", "test2.jpg", "test3.jpg"], "output.pdf")
👉Заключительные мысли
Что ж, я очень рад, что вы дошли до конца этой статьи, и я надеюсь, что вы найдете ее информативной и получили удовольствие от ее чтения. Если вам понравилась эта статья, не забудьте поделиться ❤️ ею со своими друзьями.
Больше полезных скриптов в нашем телеграмм канале по аналитике данных на Python