Я хотел бы иметь возможность спать, пока модели работают большую часть ночи в ArcGIS for Desktop.
Я хотел бы, чтобы ArcGIS for Desktop воспроизводил звук по окончании, чтобы разбудить меня.
Это возможно?
Я хотел бы иметь возможность спать, пока модели работают большую часть ночи в ArcGIS for Desktop.
Я хотел бы, чтобы ArcGIS for Desktop воспроизводил звук по окончании, чтобы разбудить меня.
Это возможно?
Ответы:
Мне очень нравится ответ Аарона, но что-то более простое и локальное:
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"])
использование модуля подпроцесса заставляет проигрыватель Windows Media открывать файл.
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])
Конечно, сэмплированная музыка с большей вероятностью усыпляет вас, поэтому что-то более похожее на мой будильник может быть более подходящим.
Но, конечно, это так просто, что вы можете сделать и то и другое, просто прикрепите это к концу кода Аарона.
Как насчет электронной почты, когда модель будет готова? Убедитесь, что ваш телефон выдает звуковой сигнал при получении электронной почты, отправленной с помощью прилагаемого скрипта Python. Это предназначено для запуска в качестве инструмента-скрипта в ModelBuilder. Если вы не знакомы с инструментами сценариев, следуйте этим инструкциям . Пожалуйста, обратите внимание, что это настроено для работы с Gmail. Инструмент предназначен для работы следующим образом (обратите внимание на предварительное условие, связывающее переменную bufferedPoints и инструмент сценария 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)
Инструкция по созданию скрипта инструмента:
Создать скрипт
Создать инструмент-скрипт