网络关闭或启动时如何重新启动.py?在 RPI [重复]
Posted
技术标签:
【中文标题】网络关闭或启动时如何重新启动.py?在 RPI [重复]【英文标题】:how to restart .py when network down or up ? in RPI [duplicate] 【发布时间】:2018-09-20 05:40:12 【问题描述】:我想使用我的树莓派将数据更新为 thingspeak。因此,我运行我的 python 代码并使用 Crontab 将其设置为在重新启动时运行。当它在后台运行时,我的 wifi 连接断开,因此脚本停止向云发送数据,即使在网络启动后也是如此。
当网络自动关闭或启动时,有什么方法可以重新启动 .py 文件。
【问题讨论】:
我写了一个代码来在网络中断或网络恢复时弹出 ubuntu 通知。看看它,并根据您的使用情况随意使用它。网址:github.com/abhilashgoyal/python_learn/blob/master/net_notify.py 【参考方案1】:您可以尝试一个循环来 ping 一个您知道始终处于启动状态的服务,或者您的网关/路由器然后在回复恢复时重新启动 .py 脚本。 (例如,如果没有响应停止,则 ping google.com 并尝试以您希望的任何方法恢复连接)然后一旦您再次获得响应,请重新启动脚本。 像
loop_value = True
while loop_value:
try:
urlopen("http://google.com")
对于重启过程,您可以使用subprocess(如果它是单独的脚本,这个会更好)或os.execv。
【讨论】:
以上是关于网络关闭或启动时如何重新启动.py?在 RPI [重复]的主要内容,如果未能解决你的问题,请参考以下文章
当用户在 10 秒内重新启动关闭的 Windows 商店应用程序时如何恢复数据
如何通过 bat 文件关闭、重新启动或注销 Windows?