importargparseimportjsonimportsysfromoffice365.sharepoint.client_contextimportClientContextfromtests.settingsimportclient_id,password,team_site_url,tenant,usernamedefmain():parser=argparse.ArgumentParser(description="Get channels in a Microsoft Team")parser.add_argument("--team-id",required=True,help="team (group) id")args=parser.parse_args()ctx=ClientContext(team_site_url).with_username_and_password(tenant=tenant,client_id=client_id,username=username,password=password)result=ctx.group_site_manager.get_team_channels(args.team_id).execute_query()data=json.loads(result.value)channels=data.get("value",[])ifisinstance(data,dict)else[]ifnotchannels:sys.exit("No channels found.")forchannelinchannels:print(f" {channel.get('displayName','?')} ({channel.get('id','?')})")if__name__=="__main__":main()