我开始学习python,并且我已经尝试创建一个脚本来在特定时间运行某个命令。这就是我到目前为止所做的:
import datetime
day_of_week = datetime.date.today().weekday() # 0 is Monday, 6 is Sunday
time = datetime.datetime.now().time()
if day_of_week == 4 and (time >= datetime.time(2,45) and time < datetime.time(9)):
#do something
elif (day_of_week == 3 and time > datetime.time(22)) or (day_of_week == 4 and time < datetime.time(2,45)):
#wait until 2h45
else:
#do nothing
我希望脚本仅在某一天以及在19/00太平洋标准时间/太平洋标准时间(格林尼治标准时间2点45分/ UTC)附近继续运行。我写的那个可以和GMT / UTC一起使用,但是我确定它会在夏令时开始时失败,或者我将当地时区改为另一个时区。
如何让脚本检查PST / PDT中的当前时间并从那里继续,忽略或转换本地时区?
答案 0 :(得分:0)
答案 1 :(得分:0)
@Ruben,请在下面尝试以下代码。它总是关注美国/太平洋时区的时间。希望能帮助到你。感谢。
import datetime
import pytz
pst_timezone = pytz.timezone("US/Pacific")
time=datetime.datetime.now(pst_timezone).time()
print(time)
Result: 12:13:10.136603
答案 2 :(得分:-1)
Pythons Datetime从系统时间开始。因此,如果系统设置为使用夏令时,那么你会没事的。
如果您不信任或无法信任系统时间,那么功能构建将不准确。然后,您需要让程序运行并从另一台服务器中抽出时间。