시스템에 Python이 있다고 가정하면에 대한 대안이 cron
있습니다. 5 분마다 Midori를 다시로드하는 빠른 Python 2.7.3 스크립트를 작성했습니다.
#This program reloads midori every 5 minutes
#Redifine the variables below as you see fit
rest_time = 300 #Rest time is set to 300 seconds (5 minutes)
import subprocess as sub #Imports terminal commands (needed for reload)
from time import sleep #Import sleep (allows an infinite loop to become dormant)
while True: #This is an infinite loop. This means that our script won't stop.
sub.call(["midori", "-e", "Reload"]) #This forwards our command to the terminal
sleep(rest_time) #Wait rest_time second(s), then start the loop again.
휴식 시간을 변경해야하는 경우 rest_time
변수 를 변경하기 만하면 됩니다.
새로운 스크립트
"스마트 한"프로그램이 필요하다고 말했듯이 프로그램을 편집했습니다. 이 프로그램을 사용할 때는 Midori를 수동으로 열지 마십시오. 스크립트에서 엽니 다. 그렇지 않으면 스피드 다이얼러로 인해 충돌하는 이상한 습관이 있습니다. 또한 Python 2.7.3에서 실행됩니다. 해당 복사 및 붙여 넣기를 모두 수행하지 않으려면 코드의 pastebin을 방문하십시오 .
"""
Midori Kiosk Reloader.
Created by xxmbabanexx
NOTE: This program opens Midori automatically. DO NOT OPEN IT MANUALLY, SIMPLY CLICK ON THIS PROGRAM.
KEYS
1 = Connection Complete. All is well.
0 = Connection Incomplete. Something is wrong.
"""
#Change these variables to your liking.
host = "www.google.com" #Put your desired host URL/IP between the quotes
port = 80 #Set to default port of 80. If your host uses something else, please change it.
recheck_time = 10 #The number of seconds the program will wait to ping the server. Change this at your leisure.
page_to_open_to = "www.google.com" #This is the webpage the kiosk will open to. Put the url between the quotes.
#Excersise caution when changing these vars.
last = -1 #undefined state
up = -1 #Undefined state
"""
#---------------- Main code. Do NOT touch unless you KNOW what you are doing. ------------
"""
#Import modules
import subprocess as sub
from time import sleep
import socket
import threading
sub.Popen(["midori", "-a", page_to_open_to]) #open midori
#Check if internet is up
addr = (host, port) #the connection addr
while True:
last = up #reset checking var
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #create socket
try: #attempt to ping, change vars
s.connect(addr)
up = 1
print "\n"
except socket.error: #if error when pinging, change vars
up = 0
print "\n"
print "LAST CHECK:", last
print "CURRENT CHECK:", up
if last == 0 and up == 1:
print "Reloading Midori.\n"
sub.call(["midori", "-e", "Reload"])
s.close()
sleep(recheck_time)
qdbus
패키지에서 실행libqt4-dbus
하거나 비슷한 도구를 사용하여 Midori를 찾을 수 있습니다. 그러면 페이지를 새로 고칠 수 있습니다.