本帖最后由 毛阿毛 于 2024-12-19 07:32 编辑
2024.12.19 这个脚本有时候会抽风,连续打开APP,后来又就没用了,最近兴起又折腾了个了下。
试了下没有之前的毛病了,关机10秒后才会判断关机,中间偶尔检测不到不会判定关机。开机2秒后启动APP。
下面是2.0脚本内容:
[Python] 纯文本查看 复制代码 #!/usr/bin/python
# -*- coding: utf-8 -*-
#小米电视开机启动指定APP脚本 2.0
import requests
import time
import ping3
import threading
#需要安装模块
#pip install ping3 requests
#小米电视固定IP地址
mitv_ip = "192.168.1.33"
#开启启动的APP包名,可以用 mt管理器 打开AndroidManifest.xml,搜索package获取包名
my_app_name = "com.dianshijia.newlive" #这里是电视家的
mitv_info_url = "http://"+mitv_ip+":6095/request?action=isalive"
mitv_startapp_url = "http://"+mitv_ip+":6095/controller?action=startapp&&type=packagename&packagename="+my_app_name
def start_app():
try:
print("启动APP...")
res1 = requests.get(mitv_startapp_url, timeout=1).json()
#time.sleep(2)
print(res1)
except:
print("启动APP失败...")
pass
alive_count = 0
offline_count = 0
while (1):
#用ping检测地址。如果通则跳过检测
response_time = ping3.ping(mitv_ip, timeout=1)
#print(response_time)
print("offline_count:",offline_count,"alive_count:",alive_count,"\r",end="")
if not response_time:
#time.sleep(1)
offline_count += 1
continue
try:
res = requests.get(mitv_info_url, timeout=1).json()
if res['msg'] =='success':
#print("发现小米电视启动")
alive_count += 1
else:
offline_count += 1
except:
#print("小米电视检测中...")
offline_count += 1
if offline_count > 10 and alive_count > 2:
print("发现开机,开启指定APP")
start_app()
alive_count = 0
offline_count = 0
if alive_count > 9999 or offline_count > 9999:
alive_count = 99
offline_count = 99
time.sleep(1) |