Python

Планиране на задачи с помощта на Python

Планиране на задачи с помощта на Python
Някои задачи в живота ни наистина отнемат време и ни омръзва да ги правим многократно. За да избегнем онези скучни задачи, ние ги автоматизираме в нашата система. Python има много модули за автоматизация, които могат да се използват за автоматизиране на нашите неща. По-долу ще обсъдим важността на автоматизацията и как да автоматизираме нашите неща с помощта на python. Ще обсъдим и някои модули за автоматизация в python, които помагат за автоматизиране на нашите неща. След това ще видим някои случаи на употреба на автоматизация с помощта на python. В края ще видим как можем да планираме автоматичното стартиране на нашия python скрипт при стартиране.

Защо ние автоматизираме нашите неща

Автоматизацията на нашите неща може да улесни живота ни. Той има много предимства, но някои важни предимства на автоматизацията са дадени по-долу

Автоматизация с Python

Има някои много скриптови езици като bash, perl и т.н. за автоматизиране на ръчни процеси, но python предоставя възможна среда за справяне с нашите нужди. По-лесно е да автоматизирате неща, използвайки езика за програмиране Python, отколкото на който и да е друг език. Python има много модули за автоматизация (т.е.д. подпроцес, shutil, os, pyautogui, селен и т.н.), които могат да се използват в автоматизацията. Ще видим някои случаи на използване на начина, по който автоматизираме нашите неща.

Модули за автоматизация в Python

Тук ще обсъдим някои модули за автоматизация в python като OS, ПОДПРОЦЕС, SHUTIL, DATETIME, SELENIUM и т.н. Тези модули се използват за изпълнение на системни команди и могат да се използват и за манипулиране на системни директории. Тези модули имат вградени функции, които улесняват изпълнението на задачи в системата.

операционна система и ПОДПРОЦЕС модулите се използват за почти същата цел. Някои от вградените функции на тези модули са дадени по-долу

по същия начин ШУТИЛ модулът има много функции, което позволява да се взаимодейства със системата. Някои функции на този модул са дадени по-долу

ВРЕМЕ ЗА СРЕЩА модул се използва за намиране на текущата дата и час. Използва се и за намиране на делничния ден и много други неща. Можем да планираме нашата задача по всяко време и дата, използвайки този модул. В следващите случаи на употреба ще го използваме, за да намерим само текущата дата и час.

СЕЛЕН Модулът се използва за автоматизиране на процеса на регистриране на нашия уебсайт. Ние можем автоматично да влезем в нашия уебсайт и да го актуализираме с помощта СЕЛЕН модул. СЕЛЕН има много вградени функции, които се използват за изпълнение на различни задачи, свързани с браузърите.

Как да изпълнявам системни команди в Python

Можем да изпълняваме системни команди в python, използвайки операционна система и ПОДПРОЦЕС модули. Следва синтаксисът за изпълнение на системната команда в python

операционна система.system ('команда')

ИЛИ

подпроцес.повикване ('команда')

Например, ако искаме да изброим всички файлове и директории в текущата директория, ще изпълним следната команда в python script

операционна система.система ('ls')

ИЛИ

подпроцес.обаждане ('ls')

Как да автоматизирате нещата с Python

Python може да се използва за автоматизиране на много видове ежедневни задачи, които могат да спестят време. Тук ще видим някои случаи на използване на автоматизиране на нашите неща. Ще обсъдим подреждането на файлове в директорията за изтегляне и запазването на резервно копие на нашите важни файлове.

Подреждане на файлове в директорията за изтегляне

Когато изтегляме какъвто и да е тип файл, той по подразбиране отива в директорията за изтегляне. Когато трябва да намерим какъвто и да е файл, това може да създаде проблем, тъй като в директорията за изтегляне има много смесени файлове. Сега ще напишем python скрипт, за да автоматизираме системата по такъв начин, че различни видове файлове (напр.ж. mp3, png, xls и т.н.) отива в различни директории. Пълният код е даден по-долу. Този код ще проверява всеки тип файл един по един, след което ще създаде съответната директория. След това той ще премести файла в свързани директории (напр.g ... mp3 файлът ще влезе в директорията „Аудио“).

внос os
внос shutil
импортиране на дата и час
докато 1:
# изчисляване на текущия час, минута и секунда
днес = дата и час.Време за среща.днес ()
днес = str (днес)
current_hour = днес [11:13]
current_minute = днес [14:16]
current_sec = днес [17:19]
# уверете се, че системата ще организира файлове в 08:00
ако current_hour == '08' и current_minute == '00' и current_sec == '00':
# промяна на директория за изтегляне
операционна система.chdir ("path_to_Download_directory")
# запазване на всички имена на файлове в списък
файлове = os.listdir (os.getcwd ())
за име на файл във файлове:
# игнориране на директории
ако не ос.път.isdir (име на файл):
# избор на mp3 файлове
ако.mp3 'в име на файл:
# създаване на директория „Аудио“, ако не съществува
ако не ос.път.съществува („Аудио“):
операционна система.mkdir ('Аудио')
# движещ се файл в директорията „Аудио“
шутил.преместване (име на файл, „Аудио“)
# избор на mp4 файлове
elif '.mp4 'в име на файл:
# създаване на директория „Video“, ако не съществува
ако не ос.път.съществува („Видео“):
операционна система.mkdir („Видео“)
# движещ се файл в директорията 'Video'
шутил.преместване (име на файл, „Видео“)
# избор на pdf файлове
elif '.pdf 'в име на файл:
# създаване на директория „PDF“, ако не съществува
ако не ос.път.съществува („PDF“):
операционна система.mkdir ('PDF')
# движещ се файл в PDF директория
шутил.преместване (име на файл, 'PDF')
# избор на jpg и png файлове
elif '.jpg 'в име на файл или'.png 'в име на файл:
# създаване на директория „Картини“, ако не съществува
ако не ос.път.съществува („Снимки“):
операционна система.mkdir ('Снимки')
# движещ се файл в директорията "Картини"
шутил.преместване (име на файл, „Картини“)
# избор на Excel файлове
elif '.xls 'в име на файл:
# създаване на директория „Excel“, ако не съществува
ако не ос.път.съществува („Excel“):
операционна система.mkdir ('Excel')
# движещ се файл в директорията "Excel"
шутил.преместване (име на файл, „Excel“)
# избор.ppt 'файлове
elif '.ppt 'в име на файл:
# създаване на директория 'Power Point', ако не съществува
ако не ос.път.съществува ('Power Point'):
операционна система.mkdir ('Power Point')
# движещ се файл в директорията 'Power Point'
шутил.преместване (име на файл, 'Power Point')
# избор.файлове на docs
elif '.docx 'в име на файл:
# създаване на директория „Word File“, ако не съществува
ако не ос.път.съществува („Word файл“):
операционна система.mkdir („Файл на Word“)
# движещ се файл в директорията „Word File“
шутил.преместване (име на файл, „Файл на Word“)

На първо място, ще запазим текущото време в различни променливи, след което ще проверим дали времето е точно '08: 00 'или не. Програмата ще проверява часа всеки ден и ще изпълнява кода, ако времето е '08: 00 ', тогава ще се стартира основният код. В основния код, на първо място, ние променяме нашата директория на директория за изтегляне. Тук ще запазим всички имена на файлове в списък с имена на файлове. Сега ще прочетем всички файлове един по един и ще филтрираме само файлове. Ще игнорираме директориите, тъй като ще подреждаме само файлове.

Сега ще проверим всеки тип файл дали е mp3, mp4, jpg, pdf, xls, ppt и docx или не. След проверка на всеки тип файл ще проверим дали съществува съответната директория или не. Например, ако файлът е mp3, ние ще проверим дали съществува директория „Аудио“ или не. Ако съответната директория не съществува, ние ще създадем директорията. След създаването на директория ще преместим нашия файл в тази директория. По този начин всички файлове могат да бъдат преместени в съответните им директории.

Този код ще работи непрекъснато и ще продължи да проверява дали времето е '08: 00 'или не. Всеки ден в '08: 00 'файловете ще се подреждат автоматично. Този код може да бъде планиран да се изпълнява всеки път, когато стартирате системата си с помощта на crontab. Crontab е обяснен по-долу.

Автоматично архивирайте вашите файлове, като използвате системни команди

Имате някои важни файлове в директория, свързани с вашия проект и по някакъв начин някои файлове се изтриват. Тогава какво ще правиш? В този случай създаването на резервно копие на вашите файлове е важно. Но създаването на резервно копие на вашите файлове е наистина скучно и отнема много време. Тази задача може да бъде изпълнена автоматично чрез писане на python скрипт. Следва кодът за изпълнение на тази задача. Този код ще конвертира всеки файл в zip файл, след което ще създаде резервна директория, ако не съществува. След това zip файлът ще бъде преместен в директорията за архивиране.

внос os
импортиране на дата и час
докато 1:
# спестяване на текущо време
днес = дата и час.Време за среща.днес ()
днес = str (днес)
current_hour = днес [11:13]
current_minute = днес [14:16]
current_sec = днес [17:19]
# уверете се, че кодът ще работи точно в '08: 00 '
ако current_hour == '08' и current_minute == '00' и current_sec == '00':
# промяна на директория на документи
операционна система.chdir ('path_to_documents_directory')
# запазване на всички имена на файлове в списък
файлове = os.listdir (os.getcwd ())
# създаване на директория за архивиране, ако не съществува
ако не ос.път.съществува („резервно копие“):
операционна система.mkdir ('архивиране')
за файл във файлове:
# игнориране на директории
ако не ос.път.isdir (файл):
# дефиниране на име на файл без интервали
оригинално_име = файл
файл = файл.разделяне ("")
file_name = "".присъединяване (файл)
# дефиниране на zip_filename
zip_file_name = име на файл + ".цип "
# проверка дали файлът вече съществува в архивна директория или не
ако не ос.път.съществува ('backup /' + zip_file_name):
# промяна на името на файла без интервали
операционна система.преименуване (оригинално_име, име_на_файл)
# създаване на zip файл с помощта на системна команда
операционна система.система ("zip" + zip_file_name + "" + file_name)
#moving zip файл в архивна директория с помощта на системна команда
операционна система.система ("mv" + zip_file_name + "backup")
# промяна на името на файла в оригиналното му име
операционна система.преименуване (име_на_файл, оригинално_име)

На първо място ще запазим текущото време в променливи и след това ще проверим дали времето е '08: 00 'или не. Ако времето е точно '08: 00 ', тогава ще се стартира основният скрипт. В основния код, първо, отиваме в директорията, в която присъстват важни файлове. След това записваме всички имена на файлове в списък. Сега ще създадем директория „резервно копие“, в която ще запазим всички zip файлове. Ако тази директория вече съществува, ние ще я игнорираме. Сега ще прочетем всеки файл и ще проверим дали това са файлове или не. Директориите ще бъдат игнорирани и файловете ще бъдат разгледани.

За да създадем zip файл на файл с помощта на системна команда, на първо място ще преименуваме този файл без интервали, тъй като името на файла с интервали се счита за различен файл на всяко интервал, когато се изпълнява в системна команда с помощта на python script. Името на файла се записва в променлива 'original_filename' и файлът се преименува без интервали. Сега ще дефинираме името на zip файла, същото като името на файла с разширение '.цип.

След това ще използваме системната команда 'zip', за да архивираме този файл и след това ще преместим този zip файл в директорията 'backup', използвайки системната команда 'mv'. След това отново ще преименуваме файла с оригиналното му име с интервали в него. Този код ще бъде насрочен да се стартира всеки път автоматично, когато стартирате системата си с помощта на crontab.

Автоматизирайте стартирането на скрипт с помощта на Crontab

Написахме скриптове за автоматизация по-горе. Сега искаме да стартираме тези скриптове автоматично, когато системата ни се рестартира. За целта добавяме скрипта си в crontab. За да добавите задача в crontab, направете следните стъпки

На първо място, въведете следната команда, за да редактирате crontab файл

ubuntu @ ubuntu: ~ $ crontab -e

-Флагът означава отворен crontab в режим на редактиране. След отваряне на crontab файл сега ще добавим нашата задача в този файл, като използваме следната команда в края на файла

@reboot python / path / to / python / script

Това ще стартира python скрипта автоматично всеки път, когато стартирате системата си.

Заключение

В тази статия е обяснено значението на автоматизацията в практическия живот. Четейки тази статия, вие получавате представа, че как можете да автоматизирате вашите прости задачи, които правите всеки ден. Определено трябва да потърсите повече библиотеки и функции на python за по-добра и лесна автоматизация.

Добавете жестове на мишката към Windows 10, като използвате тези безплатни инструменти
През последните години компютрите и операционните системи значително се развиха. Имаше време, когато потребителите трябваше да използват команди за на...
Контролирайте и управлявайте движението на мишката между множество монитори в Windows 10
Двоен дисплей на мишката ви позволява да контролирате и конфигурирате движението на мишката между множество монитори, като забавя движенията му близо ...
WinMouse ви позволява да персонализирате и подобрите движението на показалеца на мишката на компютър с Windows
Ако искате да подобрите функциите по подразбиране на показалеца на мишката, използвайте безплатна програма WinMouse. Той добавя още функции, за да ви ...