Բովանդակություն:

Windows- ում ինքնաբերաբար պահեք սքրինշոթերը Python սցենարով ՝ 4 քայլ
Windows- ում ինքնաբերաբար պահեք սքրինշոթերը Python սցենարով ՝ 4 քայլ

Video: Windows- ում ինքնաբերաբար պահեք սքրինշոթերը Python սցենարով ՝ 4 քայլ

Video: Windows- ում ինքնաբերաբար պահեք սքրինշոթերը Python սցենարով ՝ 4 քայլ
Video: Մեզ հետ մեծացեք #SanTenChan Ուղղակի ինչ -որ բանի մասին խոսելու համար 2021 թ. Սեպտեմբերի 20 2024, Նոյեմբեր
Anonim
Windows- ում ինքնաբերաբար պահեք սքրինշոթերը Python սցենարով
Windows- ում ինքնաբերաբար պահեք սքրինշոթերը Python սցենարով

Սովորաբար պատուհաններում, սքրինշոթը (տպագիր էկրանը) պահելու համար նախ պետք է նկարել սքրինշոթը, այնուհետև բացել ներկը, այնուհետև տեղադրել այն, իսկ հետո վերջապես պահպանել:

Այժմ ես ձեզ կսովորեցնեմ, թե ինչպես պատրաստել պիթոնի ծրագիր այն ավտոմատացնելու համար:

Այս ծրագիրը կստեղծի ձեր աշխատասեղանին «կրակոց» անունով թղթապանակ և կփրկի նկարների ներսում նոր թղթապանակում սքրինշոթերը այն ժամանակով, երբ այն վերցված է PrtScn ստեղնը սեղմելիս և ծրագրից դուրս գալու դեպքում, երբ սեղմված է Ctrl + PtrScn:

Ձեզ հարկավոր կլինի տեղադրված python 3.7, տեքստային խմբագիր (ես օգտագործել եմ Sublime Text 3), ինքնագիր և pynput python փաթեթներ

Քայլ 1: Տեղադրեք Autopy և Pynput

Python 3.7 -ը տեղադրելուց հետո բացեք cmd (հրամանի տող) և մուտքագրեք հետևյալը.

pip տեղադրել ինքնագիր

սեղմեք enter: Սա կտեղադրի պատճենահանման փաթեթը: Սա անելուց հետո մուտքագրեք.

pip տեղադրել pynput

տեղադրել pynput փաթեթը:

Քայլ 2: Կոդավորում

Բացեք ձեր տեքստային խմբագրիչը և մուտքագրեք հետևյալը.

ներմուծել ամսաթիվը

ներմուծում os ներմուծում պատճեն pynput.keyboard- ի ներմուծման բանալին, ունկնդիր

ապա մուտքագրեք.

exit_combination = {Key.ctrl_l, Key.print_screen}

current_pressed = հավաքածու ()

սա սահմանում է ծրագրից դուրս գալու բանալիների համադրությունը, երբ օգտագործողը սեղմում է ստեղների համադրություն, այս դեպքում դա Ձախ Ctrl + PrtScn է:

Այնուհետեւ մուտքագրեք.

path = "c: // Users //"+os.getlogin ()+"// Desktop // shots //"+str (datetime.date.today ())

փորձեք ՝ os.makedirs (ուղի) բացառությամբ FileExistsError: pass

Սա կստեղծի ձեր աշխատասեղանին նկարահանված անուններով պանակ և դրա ներսում ընթացիկ ամսաթվով մեկ այլ թղթապանակ: os.getlogin () - ը օգտագործվում է ընթացիկ օգտվողին ստանալու համար:

Այնուհետեւ մուտքագրեք.

ունկնդիրի հետ (on_press = on_press, on_release = on_release) ՝ որպես ունկնդիր.

ունկնդիր: միացեք ()

այստեղ ունկնդիր գործառույթը լսում է ստեղնաշարի հարվածները, և միացումը () օգտագործվում է դրանք հավաքելու համար մինչև ազատ արձակելը:

Այժմ եկեք սահմանենք գործառույթները, մուտքագրենք դրանք անմիջապես ներմուծման հայտարարություններից հետո, «exit_combination» - ից առաջ:

Մենք պետք է սահմանենք 3 գործառույթ ՝ on_press, on_release և check_key:

on_press և on_release գործառույթներ են, որոնք պահանջվում են ունկնդիր գործառույթից:

def on_press (key). check_key (key) if key in exit_combination: current_pressed.add (key) if currently_pressed == exit_combination: listener.stop ()

այս գործառույթը վերցնում է «բանալին» պարամետրը և փոխանցում այն check_key (key) գործառույթին: Այնուհետև այն ստուգում է, թե արդյոք բանալին ելքի համադրության մեջ է, այսինքն ՝ ծրագրից դուրս գալու համար սեղմելու ստեղների համադրությունը, եթե այն կա, ապա այն դադարում է կատարել ունկնդրի գործառույթը:

Այնուհետեւ մուտքագրեք.

def on_release (key): try: current_pressed.remove (key) բացառությամբ KeyError: pass

սա բանալին հանում է ներկայումս սեղմված հավաքածուից:

Այնուհետեւ մուտքագրեք.

def check_key (key): if key == Key.print_screen: shot = autopy.bitmap.capture_screen () now = datetime.datetime.now () timenow = now.strftime ("%H_%M_%S") path = " c: // Users // "+os.getlogin ()+" // Desktop // shots // "+str (datetime.date.today ()) try: shot.save (path+'//'+timenow+'-p.webp

Այս գործառույթը համեմատում է ներկայումս սեղմված ստեղնը նշված ստեղնի հետ (print_screen ստեղն), եթե այն համընկնում է, ապա վերցնում է սքրինշոթ ՝ օգտագործելով autopy գրադարանի capture_screen () և պահում այն «կրակոց» փոփոխականի մոտ:

Այնուհետև այն վերափոխում է ընթացիկ ամսաթիվը օգտագործելու ուղու փոփոխականը (դա արվում է ընթացիկ ամսաթվով նոր թղթապանակ ստեղծելու համար, որպեսզի նույնիսկ եթե օգտվողը չվերագործարկի ծրագիրը երեկոյան 12: 00 -ից հետո, սքրինշոթերը կպահվեն նոր թղթապանակում թարմացված ամսաթվով:

Փորձի հայտարարությունը օգտագործվում է նկարը ընթացիկ ամսաթվով թղթապանակում պահելու համար: Եթե թղթապանակը գոյություն չունի, այն կստեղծի FileNotFoundError, որը մշակվում է բացառությամբ հայտարարությամբ ՝ կազմելով թղթապանակը և այն պահելով:

Այժմ պահպանեք կոդը.py ընդլայնմամբ:

Ստուգեք կցված python ֆայլը, եթե այն պարզ չէ

Քայլ 3. Կոդի փորձարկում և աշխատեք առանց վահանակի պատուհանի:

Կոդի փորձարկում և գործարկում առանց վահանակի պատուհանի
Կոդի փորձարկում և գործարկում առանց վահանակի պատուհանի

Եթե ձեր տեքստային խմբագրիչը աջակցում է ծածկագրի գործարկմանը, ապա գործարկեք այն: Եթե ոչ, ապա կրկնակի կտտացրեք python ֆայլին այն գործարկելու համար:

Եթե սխալներ չեք ստանում, ապա շնորհավորում եմ:

Այժմ, եթե չեք ցանկանում տեսնել վահանակի պատուհանը ամեն անգամ, երբ գործարկում եք կոդը, ապա փոխեք ֆայլի ընդլայնումը.py- ից.pyw:

Programրագրից դուրս գալու կանխադրված ստեղնային համադրությունը մնում է ctrl + prtscn, կարող եք դա փոխել ՝ այն փոխելով exit_combination- ում:

Եթե ձեզ դուր եկավ սա ուսանելի, խնդրում եմ քվեարկեք իմ օգտին մրցույթում

Խորհուրդ ենք տալիս: