importargparseimportsysfromoffice365.sharepoint.client_contextimportClientContextfromoffice365.sharepoint.sitescripts.utilityimportSiteScriptUtilityfromtests.settingsimportclient_id,password,site_url,tenant,usernamedefmain():parser=argparse.ArgumentParser(description="Delete a site script by ID")parser.add_argument("--site-url",default=site_url,help="target site URL")parser.add_argument("--script-id",default=None,help="site script id (default: first script)")args=parser.parse_args()ctx=ClientContext(args.site_url).with_username_and_password(tenant=tenant,client_id=client_id,username=username,password=password,)result=SiteScriptUtility.get_site_scripts(ctx).execute_query()ifnotresult.value:sys.exit("No site scripts found.")ifargs.script_id:target=next((sforsinresult.valueifstr(s.Id)==args.script_id),None)iftargetisNone:raiseValueError(f"Site script {args.script_id} not found")else:target=result.value[0]asserttarget.IdisnotNoneSiteScriptUtility.delete_site_script(ctx,target.Id).execute_query()print(f"Deleted site script: {target.Title} (ID: {target.Id})")if__name__=="__main__":main()