Python pywin32 Windows Task Scheduler wrapper
Project description
tsksch
A python pywin32 wrapper library for Windows Task Scheduler.
List All Scheduled Tasks
from tasksch.scheduler import TaskService
with TaskService() as ts:
root = ts.root_folder()
for folder in root.walk():
print(f"DIR: {folder.path}")
for task in folder.tasks():
print(f"TSK: {task.path}")
Create New Folder
from tasksch.scheduler import TaskService
with TaskService() as ts:
root = ts.root_folder()
if not root.find("\\NEW FOLDER"):
root.create_folder("\\NEW FOLDER")
Create New Task
from tasksch folder import TaskFolder
from tasksch.scheduler import TaskService
from tasksch.com import local_datetime
from tasksch.settings import duration, TaskInstancesPolicy
from tasksch.principle import TaskRunlevelType
with TaskService() as ts:
root = ts.root_folder()
folder = root.find(folder_name)
if not folder:
return
existing_task = folder.find_task(task_name)
if existing_task:
return
task = service.new_task()
reg_info = task.registration_info
reg_info.author = 'Mark Gemmill'
reg_info.description = 'Test Task'
action = task.actions.create_exec_action()
action.path = r"C:\Users\username\execute.bat"
action.working_directory = r"C:\Users\username"
trigger = task.triggers.create_daily_trigger()
trigger.start_boundary = local_datetime(2024, 1, 1, 5, 30)
trigger.days_interval = 1
trigger.enabled = True
settings = task.settings
settings.enabled = True
settings.hidden = True
settings.multiple_instances = TaskInstancesPolicy.TASK_INSTANCES_IGNORE_NEW
settings.allow_demand_start = True
settings.execution_time_limit = duration(hours=1, minutes=30)
principal = task.principal
principal.user_id = 'mark'
principal.run_level = TaskRunlevelType.TASK_RUNLEVEL_HIGHEST
folder.register_new_task_definition(
task,
task_name,
'username',
'Ckr1t',
)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
tasksch-0.3.0.tar.gz
(20.8 kB
view details)
File details
Details for the file tasksch-0.3.0.tar.gz.
File metadata
- Download URL: tasksch-0.3.0.tar.gz
- Upload date:
- Size: 20.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.10.6 Darwin/23.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dcdfdca08d34fef01dbe9c7650c1b400009162e2f7d55319ca89986ef8c1c37c
|
|
| MD5 |
ec13533fb707255e8abdf976bc7e57b7
|
|
| BLAKE2b-256 |
1fabbf37893b9943cf54535b9715e5587606da645b4ad390b56cfd1bb2120b12
|