Vorrei poter dormire mentre i modelli sono in esecuzione per gran parte della notte in ArcGIS per desktop.
Vorrei che ArcGIS for Desktop riproducesse un suono al termine, per svegliarmi.
È possibile?
Vorrei poter dormire mentre i modelli sono in esecuzione per gran parte della notte in ArcGIS per desktop.
Vorrei che ArcGIS for Desktop riproducesse un suono al termine, per svegliarmi.
È possibile?
Risposte:
Mi piace molto la risposta di Aaron, ma qualcosa di più semplice e locale:
subprocess.Popen([r"C:\Program Files (x86)\Windows Media Player\wmplayer.exe",r"C:\Users\Public\Music\Sample Music\Maid with the Flaxen Hair.mp3"])
l'utilizzo del modulo sottoprocesso provoca l'apertura di un file da parte di Windows Media Player.
import subprocess
wmPlay = r"C:\Program Files (x86)\Windows Media Player\wmplayer.exe"
PlayFile= r"C:\Users\Public\Music\Sample Music\Maid with the Flaxen Hair.mp3"
subprocess.Popen([wmPlay,PlayFile])
Ovviamente è più probabile che la musica campione ti metta a dormire, quindi qualcosa di più simile al tono della sveglia potrebbe essere più adatto.
Ma ovviamente è così semplice che potresti fare entrambe le cose, basta applicarlo alla fine del codice di Aaron.
Che ne dici di e-mail te stesso quando il modello è finito? Assicurati di impostare il telefono affinché ti dia un tono quando ricevi l'e-mail inviata tramite lo script Python allegato. Questo è progettato per essere eseguito come strumento di script in ModelBuilder. Se non si ha familiarità con gli strumenti di script, seguire queste istruzioni . Per favore, non è configurato per funzionare con Gmail. Lo strumento è progettato per funzionare nel modo seguente (notare la condizione preliminare che collega la variabile bufferedPoints e lo strumento di script sendEmail):
import smtplib, os, arcpy
from email.MIMEMultipart import MIMEMultipart
from email.MIMEBase import MIMEBase
from email.MIMEText import MIMEText
from email import Encoders
# Fill in the necessary blanks here
gmail_user = sys.argv[1]
gmail_pwd = sys.argv[2]
# The parameters
to = sys.argv[3]
subject = sys.argv[4]
text = sys.argv[5]
def mail(to, subject, text):
msg = MIMEMultipart()
msg['From'] = gmail_user
msg['To'] = to
msg['Subject'] = subject
# Attaches a text message to the e-mail
msg.attach(MIMEText(text))
mailServer =smtplib.SMTP("smtp.gmail.com", 587)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login(gmail_user, gmail_pwd)
mailServer.sendmail(gmail_user, to, msg.as_string())
mailServer.close()
mail(to, subject, text)
Istruzioni per la creazione dello strumento di script:
Crea lo script
Crea lo strumento di script