import arcpy import os import datetime import logging PROJECT = r"\GISdata\ArcGISPro_Projects\SamplePublishArcPly.aprx" MAP_NAME = "SampleAutoPublish" SERVICE_NAME = "SampleAutoPublish" OUTPUT_FOLDER = r"C:\GIS\Publishing" PORTAL = "https://www.arcgis.com" USERNAME = "your_username" PASSWORD = "your_password" logging.basicConfig(filename=r"C:\GIS\Logs\Publish.log", level=logging.INFO, format='%(asctime)s %(message)s') arcpy.SignInToPortal(PORTAL, USERNAME, PASSWORD) aprx = arcpy.mp.ArcGISProject(PROJECT) m = aprx.listMaps(MAP_NAME)[0] sharing_draft = m.getWebLayerSharingDraft(server_type="HOSTING_SERVER", service_type="FEATURE", service_name=SERVICE_NAME) sharing_draft.overwriteExistingService = True sddraft = os.path.join(OUTPUT_FOLDER, SERVICE_NAME + ".sddraft") sd = os.path.join(OUTPUT_FOLDER, SERVICE_NAME + ".sd") sharing_draft.exportToSDDraft(sddraft) arcpy.server.StageService(sddraft, sd) arcpy.server.UploadServiceDefinition(sd, "HOSTING_SERVER") logging.info(f"{SERVICE_NAME} successfully overwritten.") print(f"Completed: {datetime.datetime.now()}")