Питхон

Заказивање задатака помоћу Питхона

Заказивање задатака помоћу Питхона
Неки задаци у нашем животу заиста узимају време и досадно нам је понављати их. Да бисмо избегли те досадне задатке, аутоматизујемо их у нашем систему. Питхон има много модула за аутоматизацију који се могу користити за аутоматизацију наших ствари. У наставку ћемо размотрити важност аутоматизације и како аутоматизовати наше ствари помоћу питхона. Такође ћемо разговарати о неким модулима за аутоматизацију у питхону који помажу у аутоматизацији наших ствари. Тада ћемо видети неке примере употребе аутоматизације помоћу питхона. На крају ћемо видети како можемо да закажемо да се наша питхон скрипта аутоматски покреће приликом покретања.

Зашто аутоматизујемо своје ствари

Аутоматизација наших ствари може нам олакшати живот. Има много предности, али неке важне предности аутоматизације дате су у наставку

Аутоматизација са Питхоном

Постоји неколико језика скриптирања као што су басх, перл итд. за аутоматизацију ручних процеса, али питхон пружа изводљиво окружење за управљање нашим потребама. Једноставније је аутоматизовати ствари користећи програмски језик Питхон него било који други језик. Питхон има много модула за аутоматизацију (тј.е. потпроцес, шутил, ос, пјаутогуи, селен итд.) који се могу користити у аутоматизацији. Видећемо неке примере употребе како аутоматизујемо своје ствари.

Модули за аутоматизацију у Питхону

Овде ћемо разговарати о неким модулима за аутоматизацију у питхон-у ОС, ПОДПРОЦЕС, СХУТИЛ, ДАТЕТИМЕ, СЕЛЕНИУМ итд. Ови модули се користе за извршавање системских наредби, а могу се користити и за манипулисање системским директоријумима. Ови модули имају уграђене функције које олакшавају извршавање задатака на систему.

ОС и ПОДПРОЦЕС модули се користе у скоро исте сврхе. Неке уграђене функције ових модула дате су у наставку

Слично томе СХУТИЛ модул има много функција што омогућава интеракцију са системом. Неке функције овог модула дате су у наставку

ДАТУМ ВРЕМЕ модул се користи за проналажење тренутног датума и времена. Такође се користи за проналажење дана у недељи и многих других ствари. Помоћу овог модула можемо да закажемо свој задатак у било које време и на било који датум. У следећим случајевима употребе користићемо га за проналажење само тренутног датума и времена.

СЕЛЕНИУМ Модул се користи за аутоматизацију процеса пријављивања наше веб странице. Можемо се аутоматски пријавити на нашу веб страницу и ажурирати је помоћу СЕЛЕНИУМ модул. СЕЛЕНИУМ има много уграђених функција које се користе за извршавање различитих задатака повезаних са прегледачима.

Како извршавати системске наредбе у Питхону

Можемо покретати системске команде у питхону користећи ОС и ПОДПРОЦЕС модула. Следи синтакса за покретање системске команде у питхону

ос.систем ('наредба')

ИЛИ

потпроцес.позив ('наредба')

На пример, ако желимо да наведемо све датотеке и директоријуме у тренутном директоријуму, покренућемо следећу наредбу у питхон скрипти

ос.систем ('лс')

ИЛИ

потпроцес.позив ('лс')

Како аутоматизовати ствари помоћу Питхона

Питхон се може користити за аутоматизацију многих врста дневних задатака што може уштедети време. Овде ћемо видети неке примере употребе аутоматизације наших ствари. Разговараћемо о уређивању датотека у директоријуму за преузимање и чувању резервних копија наших важних датотека.

Сређивање датотека у директоријуму за преузимање

Када преузмемо било коју врсту датотеке, она подразумевано иде у директоријум за преузимање. Када морамо да пронађемо било коју датотеку, то би могло да створи проблем јер се у директоријуму за преузимање налази много врста датотека. Сада ћемо написати питхон скрипту за аутоматизацију система на такав начин да различите врсте датотека (нпр.г. мп3, пнг, клс итд.) иде у различите директоријуме. Комплетни код је дат у наставку. Овај код ће проверити сваки тип датотеке један по један, а затим ће створити одговарајући директоријум. Након тога ће датотеку преместити у повезане директоријуме (нпр.г ... мп3 датотека ће ићи у директоријум 'Аудио').

импорт ос
импорт схутил
импорт датетиме
док 1:
# израчунавање тренутног сата, минута и секунде
данас = датум и време.Датум време.данас()
данас = стр (данас)
цуррент_хоур = данас [11:13]
цуррент_минуте = данас [14:16]
цуррент_сец = данас [17:19]
# побрините се да ли ће систем уредити датотеке у 08:00
ако је цуррент_хоур == '08' и цуррент_минуте == '00' и цуррент_сец == '00':
# промена директорија за преузимање
ос.цхдир ("патх_то_Довнлоад_дирецтори")
# чување свих имена датотека на листи
филес = ос.листдир (ос.гетцвд ())
за име датотеке у датотекама:
# игнорисање директорија
ако не ос.пут.исдир (име датотеке):
# одабиром мп3 датотека
ако '.мп3 'у називу датотеке:
# стварање директорија 'Аудио' ако не постоји
ако не ос.пут.постоји ('Аудио'):
ос.мкдир ('Аудио')
# премештање датотеке у директоријум 'Аудио'
схутил.премјести (назив датотеке, 'Аудио')
# одабир мп4 датотека
елиф '.мп4 'у називу датотеке:
# стварање директорија 'Видео' ако не постоји
ако не ос.пут.постоји ('Видео'):
ос.мкдир ('Видео')
# премештање датотеке у директоријум 'Видео'
схутил.премјести (назив датотеке, 'Видео')
# одабир пдф датотека
елиф '.пдф 'у називу датотеке:
# стварање директорија 'ПДФ' ако не постоји
ако не ос.пут.постоји ('ПДФ'):
ос.мкдир ('ПДФ')
# премештање датотеке у ПДФ директоријуму
схутил.премјести (назив датотеке, 'ПДФ')
# одабир јпг и пнг датотека
елиф '.јпг 'у имену датотеке или'.пнг 'у називу датотеке:
# стварање директорија 'Слике' ако не постоји
ако не ос.пут.постоји ('Слике'):
ос.мкдир ('Слике')
# премештање датотеке у директоријум 'Слике'
схутил.премјести (назив датотеке, 'Слике')
# одабир екцел датотека
елиф '.клс 'у називу датотеке:
# стварање 'Екцел' директоријума ако не постоји
ако не ос.пут.постоји ('Екцел'):
ос.мкдир ('Екцел')
# премештање датотеке у директоријум 'Екцел'
схутил.премјести (назив датотеке, 'Екцел')
# селецтинг '.ппт 'датотеке
елиф '.ппт 'у називу датотеке:
# стварање директорија 'Повер Поинт' ако не постоји
ако не ос.пут.постоји ('Повер Поинт'):
ос.мкдир ('Повер Поинт')
# покретна датотека у директоријуму 'Повер Поинт'
схутил.премјести (назив датотеке, 'Повер Поинт')
# селецтинг '.датотеке докумената
елиф '.доцк 'у називу датотеке:
# стварање директоријума „Ворд датотека“ ако не постоји
ако не ос.пут.постоји („Ворд датотека“):
ос.мкдир ('Ворд датотека')
# премештање датотеке у директоријум „Ворд датотека“
схутил.премештање (назив датотеке, „Ворд датотека“)

Пре свега, сачуваћемо тренутно време у различитим променљивим, а затим ћемо проверити да ли је време тачно '08: 00 'или не. Програм ће свакодневно проверавати време и покреће код ако је време '08: 00 ', тада ће се покренути главни код. У главном коду, прво мењамо наш директоријум у директоријум за преузимање. Овде ћемо сачувати сва имена датотека на листи са датотекама. Сада ћемо читати све датотеке једну по једну и филтрирати само датотеке. Ми ћемо занемарити директоријуме јер ћемо уређивати само датотеке.

Сада ћемо проверити сваки тип датотеке да ли је мп3, мп4, јпг, пдф, клс, ппт и доцк или не. Након провере сваког типа датотеке, проверићемо да ли постоји одговарајући директоријум или не. На пример, ако је датотека мп3, тада ћемо проверити да директоријум „Аудио“ постоји или не. Ако одговарајући директоријум не постоји, ми ћемо га креирати. Након креирања директорија, премјестићемо датотеку у тај директориј. На тај начин се све датотеке могу преместити у одговарајуће директоријуме.

Овај код ће радити непрекидно и даље ће проверавати да ли је време '08: 00 'или не. Сваког дана у '08: 00 'датотеке ће се аутоматски слагати. Овај код се може заказати за покретање сваки пут када покренете систем помоћу цронтаб-а. Цронтаб је објашњен у наставку.

Аутоматски направите сигурносну копију датотека помоћу системских наредби

Имате неке важне датотеке у директоријуму повезане са вашим пројектом и неке датотеке се некако бришу. Онда шта ћеш учинити? У овој ситуацији је важно стварање сигурносне копије датотека. Али стварање сигурносне копије датотека је заиста досадно и одузима вам време. Овај задатак се може аутоматски извршити писањем питхон скрипте. Следи код за извршавање овог задатка. Овај код ће претворити сваку датотеку у зип датотеку, а онда ће створити резервни директоријум ако не постоји. Након тога, зип датотека ће бити премештена у директоријум за резервне копије.

импорт ос
импорт датетиме
док 1:
# уштеда тренутног времена
данас = датум и време.Датум време.данас()
данас = стр (данас)
цуррент_хоур = данас [11:13]
цуррент_минуте = данас [14:16]
цуррент_сец = данас [17:19]
# побрините се да код ради тачно у '08: 00 '
ако је цуррент_хоур == '08' и цуррент_минуте == '00' и цуррент_сец == '00':
# промена директоријума у ​​документе
ос.цхдир ('патх_то_доцументс_дирецтори')
# чување свих имена датотека на листи
филес = ос.листдир (ос.гетцвд ())
# стварање директоријума 'резервне копије' ако не постоји
ако не ос.пут.постоји ('резервна копија'):
ос.мкдир ('резервна копија')
за датотеку у датотекама:
# игнорисање директорија
ако не ос.пут.исдир (датотека):
# дефинисање назива датотеке без размака
оригинал_наме = датотека
датотека = датотека.разделити(" ")
филе_наме = "".придружи се (датотека)
# дефинише зип_филенаме
зип_филе_наме = име_датотеке + ".зип "
# проверава да ли датотека већ постоји у директоријуму за резервне копије или не
ако не ос.пут.постоји ('бацкуп /' + зип_филе_наме):
# промена имена датотеке без размака
ос.преименовати (оригинал_наме, филе_наме)
# креирање зип датотеке помоћу системске команде
ос.систем ("зип" + зип_име_датотеке + "" + име_датотеке)
#мовинг зип датотеку у директоријуму резервних копија помоћу системске наредбе
ос.систем ("мв" + зип_филе_наме + "бацкуп")
# промена назива датотеке у првобитно име
ос.преименовати (име_датотеке, оригинално_име)

Прво ћемо уштедети тренутно време у променљивим, а затим ћемо проверити да ли је време '08: 00 'или није. Ако је време тачно '08: 00 ', тада ће се покренути главна скрипта. У главном коду пре свега идемо у директоријум у којем су важне датотеке. Затим чувамо сва имена датотека на листи. Сада ћемо створити директоријум 'бацкуп' у који ћемо сачувати све зип датотеке. Ако овај директоријум већ постоји, ми ћемо га занемарити. Сада ћемо прочитати сваку датотеку и проверити да ли су то датотеке или не. Директоријуми ће се занемарити, а датотеке ће се узети у обзир.

Да бисмо креирали зип датотеку датотеке помоћу системске наредбе, прво ћемо преименовати ову датотеку без размака, јер се назив датотеке са размацима сматра различитом датотеком у сваком размаку, када се покрене у системску наредбу помоћу питхон скрипте. Име датотеке се чува у променљивој 'оригинал_наме_име' и датотека се преименује без размака. Сада ћемо дефинисати зип име датотеке исто као и име датотеке са наставком '.зип '.

Након тога користићемо системску наредбу 'зип' да бисмо ЗИП датотеку зип-овали, а затим ћемо зип датотеку преместити у директоријум 'бацкуп' помоћу системске команде 'мв'. Тада ћемо датотеку поново преименовати у оригинално име са размацима. Овај код ће бити заказан за аутоматски рад система сваки пут када систем покренете помоћу цронтаб-а.

Аутоматизујте покретање скрипте помоћу Цронтаба

Горе смо написали скрипте за аутоматизацију. Сада желимо да покренемо ове скрипте аутоматски кад год се наш систем поново покрене. Да бисмо то урадили, додајемо нашу скрипту у цронтаб. Да бисте додали задатак у цронтаб, урадите следеће кораке

Пре свега, откуцајте следећу команду за уређивање датотеке цронтаб

убунту @ убунту: ~ $ цронтаб -е

-Ознака значи отворен цронтаб у режиму уређивања. Након отварања цронтаб датотеке, сада ћемо додати наш задатак у ову датотеку помоћу следеће наредбе на крају датотеке

@ребоот питхон / патх / то / питхон / сцрипт

Ово ће аутоматски покренути питхон скрипту сваки пут када покренете систем.

Закључак

У овом чланку је објашњена важност аутоматизације у практичном животу. Читајући овај чланак, добијате идеју како можете аутоматизовати своје једноставне задатке које свакодневно радите. Дефинитивно бисте требали потражити више питхон библиотека и функција за бољу и једноставнију аутоматизацију.

Емулирајте кликове мишем лебдењем помоћу миша без клика у оперативном систему Виндовс 10
Коришћење миша или тастатуре у погрешном положају прекомерне употребе може резултирати многим здравственим проблемима, укључујући напрезање, синдром к...
Додајте покрете миша у Виндовс 10 помоћу ових бесплатних алата
Последњих година рачунари и оперативни системи су се увелико развили. Било је време када су корисници морали да користе команде за навигацију кроз мен...
Контролишите и управљајте кретањем миша између више монитора у оперативном систему Виндовс 10
Двоструки приказ миша омогућава вам контролу и конфигурисање кретања миша између више монитора, успоравајући његово кретање близу границе. Виндовс 10/...