importargparsefromoffice365.sharepoint.client_contextimportClientContextfromtests.settingsimportclient_id,password,site_url,tenant,usernamedefmain():parser=argparse.ArgumentParser(description="List all event receivers on a list or web")parser.add_argument("--site-url",default=site_url,help="target site URL")parser.add_argument("--list-title",default="Documents",help="list title")args=parser.parse_args()ctx=ClientContext(args.site_url).with_username_and_password(tenant=tenant,client_id=client_id,username=username,password=password,)# List-scoped event receiverstarget_list=ctx.web.lists.get_by_title(args.list_title)receivers=target_list.event_receivers.get().execute_query()print(f"=== Event receivers on '{args.list_title}' ({len(receivers)}) ===")forrinreceivers:print(f" {r.properties.get('ReceiverName','')} "f"(EventType: {r.properties.get('EventType','')}, "f"ReceiverId: {r.properties.get('ReceiverId','')})")if__name__=="__main__":main()