mirror of
https://github.com/kxgx/2.13-Ink-screen-clock.git
synced 2026-03-15 07:03:16 +08:00
更新 main.py
This commit is contained in:
36
bin/main.py
36
bin/main.py
@@ -38,8 +38,38 @@ def get_date():#返回当前年月日及星期几
|
||||
week_day_dict = {0: '星期一',1: '星期二',2: '星期三',3: '星期四',4: '星期五',5: '星期六',6: '星期日',}
|
||||
day = date.weekday()
|
||||
return time.strftime('%Y年%m月%d日')+''+week_day_dict[day]+''+today.strftime('农历%M月%D')
|
||||
def get_time():#返回当前时间,不到秒,大写
|
||||
return time.strftime('%H:%M')
|
||||
def get_time_with_hwclock():
|
||||
# 执行系统命令
|
||||
process = subprocess.Popen(['sudo', 'hwclock', '-r'], stdout=subprocess.PIPE)
|
||||
output, error = process.communicate()
|
||||
|
||||
if error:
|
||||
raise Exception("使用hwclock获取时间时出错")
|
||||
|
||||
# 解析输出
|
||||
time_str = output.decode('utf-8')
|
||||
# 假设 hwclock 的输出格式为 "2024-01-21 12:34:56.789+08:00"
|
||||
# 我们只需要小时和分钟部分
|
||||
match = re.search(r'(\d{2}:\d{2})', time_str)
|
||||
if not match:
|
||||
raise Exception("无法从hwclock输出中解析时间")
|
||||
|
||||
# 格式化时间
|
||||
formatted_time = match.group(1).upper()
|
||||
return formatted_time
|
||||
|
||||
def get_time_with_strftime():
|
||||
# 返回当前时间,不到秒,大写
|
||||
return time.strftime('%H:%M').upper()
|
||||
|
||||
def get_time():
|
||||
try:
|
||||
# 首先尝试使用hwclock获取时间
|
||||
return get_time_with_hwclock()
|
||||
except Exception as e:
|
||||
# 如果hwclock失败,则使用strftime获取时间
|
||||
print(f"hwclock失败: {e}, 正在尝试使用strftime获取时间")
|
||||
return get_time_with_strftime()
|
||||
def Get_address():#获取当前的IP地址
|
||||
return (subprocess.check_output(u"hostname -I | cut -d\' \' -f1 | head --bytes -1", shell = True ).decode('gbk'))
|
||||
def Get_ipv4_address(): # 获取当前的IP地址
|
||||
@@ -56,7 +86,7 @@ def Get_ipv4_address(): # 获取当前的IP地址
|
||||
else:
|
||||
return "地址获取失败"
|
||||
except subprocess.CalledProcessError as e:
|
||||
logging.error("获取IPv4地址失败: %s", e)
|
||||
#logging.error("获取IPv4地址失败: %s", e)
|
||||
return "获取失败"
|
||||
def CPU_temperature():#CPU温度获取
|
||||
temperatura = os.popen('vcgencmd measure_temp').readline()
|
||||
|
||||
Reference in New Issue
Block a user