Python: ¿Cómo agrego archivos a un nuevo directorio con una marca de tiempo?

CorePress2024-01-24  10

Soy nuevo en Python. Estoy intentando crear un script que agregue archivos importados a un nuevo directorio con una marca de tiempo, como copia de seguridad diaria. ¿Cómo señalo el nuevo directorio ya que cambia de nombre todos los días? Aquí está mi guión:

gis = GIS("https://arcgis.com", "xxx", "xxx")
items = gis.content.search(query="type:Feature Service, owner:xxx", max_items=5000,)

import datetime
import shutil
import os
now = datetime.datetime.today() 
nTime = now.strftime("%d-%m-%Y")
source = r"C:\Users\Bruger\xxx\xxx\xxx\Backup\Backup"
dest = os.path.join(source+nTime)
if not os.path.exists(dest):
    os.makedirs(dest) #creat dest dir

source_files = os.listdir(source)
for f in source_files:
    source_file = os.path.join(source,f)
    if os.path.isfile(source_file): #check if source file is a file not dir
        shutil.move(source_file,dest) #move all only files (not include dir) to dest dir

for item in items:
    service_title = item.title
    if service_title == "Bøjninger_09_06":
        try:
            service_title = item.title
            version = "1"
            fgdb_title = service_title+version
            result = item.export(fgdb_title, "File Geodatabase")
            result.download(r"C:\Users\Bruger\xxx\xxx\xxx\Backup\?????)  **what shal I write here in order to point to the new folder?**
            result.delete()
        except:
            print("An error occurred downloading"+" "+service_title)```



------------------------------------

Podrías probar con una cadena f en lugar de una cadena normal, como esta:

rf"C:\Users\Bruger\xxx\xxx\xxx\Backup\{dest}"

2

Utilicé la cadena f como escribiste: result.download (rf"C:\Users\Bruger\xxx\xxx\xxx\Backup\{dest}") pero arroja el error "Se produjo un error descargando...": ¿Lo escribí correctamente?

-Hubertus

27/03/2021 a las 10:09

Su declaración try/except nos impide saber qué excepción ocurrió. Elimínelo, ejecute el script y publique en los comentarios el mensaje de error que reciba.

- Laurent

27 de marzo de 2021 a las 12:26



------------------------------------

Puedes usar algo como esto:

result.download("C:\Users\Bruger\xxx\xxx\xxx\Backup\{}".format(dest))

Su guía para un futuro mejor - libreflare
Su guía para un futuro mejor - libreflare