ฉันอยากนอนในขณะที่รุ่นต่างๆกำลังใช้งานอยู่เป็นเวลานานใน ArcGIS for Desktop
ฉันต้องการให้ ArcGIS สำหรับเดสก์ท็อปเล่นเสียงเมื่อเสร็จสิ้นเพื่อปลุกฉัน
เป็นไปได้ไหม
ฉันอยากนอนในขณะที่รุ่นต่างๆกำลังใช้งานอยู่เป็นเวลานานใน ArcGIS for Desktop
ฉันต้องการให้ ArcGIS สำหรับเดสก์ท็อปเล่นเสียงเมื่อเสร็จสิ้นเพื่อปลุกฉัน
เป็นไปได้ไหม
คำตอบ:
ฉันชอบคำตอบของ Aarons จริงๆ แต่มีอะไรที่ง่ายและท้องถิ่นมากกว่า:
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"])
การใช้โมดูล subprocess ทำให้ 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])
แน่นอนว่าตัวอย่างเพลงมีแนวโน้มที่จะทำให้คุณหลับดังนั้นสิ่งที่คล้ายกับเสียงนาฬิกาปลุกของฉันอาจจะเหมาะสมกว่า
แต่แน่นอนว่าง่ายมากที่คุณสามารถทำได้ทั้งสองอย่าง
วิธีการเกี่ยวกับการส่งอีเมลด้วยตัวเองเมื่อแบบจำลองเสร็จสิ้น? อย่าลืมตั้งค่าโทรศัพท์ให้ส่งเสียงเมื่อคุณได้รับอีเมลที่ส่งผ่านสคริปต์ 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)
คำแนะนำสำหรับการสร้างเครื่องมือสคริปต์:
สร้างสคริปต์
สร้างเครื่องมือสคริปต์