importargparsefromoffice365.sharepoint.client_contextimportClientContextfromoffice365.sharepoint.tenant.administration.sharing_capabilitiesimport(SharingCapabilities,)fromtests.settingsimportadmin_site_url,cert_path,cert_thumbprint,client_id,team_site_url,tenantdefmain():parser=argparse.ArgumentParser(description="Set external sharing on site collections")parser.add_argument("--site-url",default=team_site_url,help="Site URL to configure")args=parser.parse_args()admin_client=ClientContext(admin_site_url).with_client_certificate(tenant,client_id=client_id,thumbprint=cert_thumbprint,cert_path=cert_path)site_props=admin_client.tenant.get_site_properties_by_url(args.site_url).execute_query()site_props.sharing_capability=SharingCapabilities.ExternalUserAndGuestSharingsite_props.update().execute_query()if__name__=="__main__":main()