Gå til innhold

[Python] Selvstartende script, 1 gang i timen


Anbefalte innlegg

Videoannonse
Annonse

<loop inntil programmet avsluttes>

<hva er klokka?>

<hvis klokka er innenfor riktig tid> -> oppdater verdiene

<vent 1 time>

<>

 

men eventuelt så kunne du ha laget litt mere og fått noe som:

<loop inntill avsluttes>

<hva er klokka?>

<hvis klokka er innenfor riktig tid>

<har det gått mer eller akkurat time siden sist jeg sjekket?> (dettte må da lagres i en anna variabel)

<hvs ja> -> oppdater verdier, og nullstill "timeren"

<>

<vent N minutter (mindre enn 1 time, så da får du mere nøyaktige tider. for hva hvis du starter programmet ditt slik at du ikke får den første oppdateringen din før nesten 1 time etter børsåpning)>

<>

 

programmet ditt vil allitd kjøre, selv om det ikke er åpningstid, men så skal det sies at dette ikke akkurat kommer til å kvele systemet ditt. Et lite python script som 1 gang hvert 10ende min sjekker hva klokka er, krever ikke mye ressurser =)

 

Jeg hadde gått for mitt andre alternativ, for da får du en mere nøyaktig oppdatering av tiden, og du vil være "raskere" ut med å få en oppdatering, enn hvis programmet f.eks starter kvart over, og oppdateringene kommer ut 10 på hel, da vil den "forsinkelsen" være med under hele kjøringen.

 

Kan hende det er noen fancy måter å gjøre noe sånt i python på, men jeg skriver ikke i python så har lite kompetanse der =)

Lenke til kommentar

Bruke OS sin schedule som etse foreslår er greit.

Python har en schedule module bygd in.

Her et eksempel hvor jeg parser ut prisen på bønner med BeautifulSoup og med sched printer ut resultalt med 10 sek intervall.

import sched, time
import urllib2
from BeautifulSoup import BeautifulSoup

def do_event():
  url = urllib2.urlopen('http://beans.itcarlow.ie/prices.html')
  soup = BeautifulSoup(url)
  tag = soup.find('strong')
  print tag.text
  s.enter(10, 1, do_event, ())

if __name__ == '__main__':
  s = sched.scheduler(time.time, time.sleep)
  s.enter(10, 1, do_event, ())
  s.run()

Endret av SNIPPSAT
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...