1. leht 1-st

Python-i script käivitamine crontabiga

Postitatud: 19.09.2013, 08:09
Postitas insippo
Proovisin igati aga ei saanudki käima. Tegemist Debian Wheezi ARM-ga

Postitatud: 19.09.2013, 09:02
Postitas imre
Kas skript niisama käivitub üldse?
Kuidas sul crontab välja näeb üldse?
Näita crontabi sisu.

Postitatud: 19.09.2013, 09:35
Postitas insippo
Script käivitub niisama küll. Pole hetkel crontabis ühtegi rida. Käima lasen muidu nii,et olen samas kataloogis kus on script ja sealt: sudo ./minuscript

Postitatud: 19.09.2013, 10:13
Postitas obundra
Kui teda sudoga käivitad, siis pane parem roodu crontabi(sudo crontab -e) , mitte kasutaja omasse(crontab -e), ja sobilik oleks koos täis teega nii püütoni kui skriptini, näiteks:

Kood: Vali kõik

*/10 * * * * /usr/bin/python /sinu/skript/skript.py &

Postitatud: 19.09.2013, 12:14
Postitas insippo
Sellega sain korda aga küsin veel siinsamas. See script jääb käima aga oleks vaja nii,et kui ta oma toimetamised ära toimetab ei jää enam käima ega koorma Raspberryt.Mida peaks sinna lõppu kirjutama juurde või kustutama ?
https://github.com/adafruit/Adafruit-Ra ... docs.ex.py

Postitatud: 19.09.2013, 15:25
Postitas obundra
Ma püütonit väga ei jaga, aga miskit sellist ehk võiks olla:

Kood: Vali kõik

#!/usr/bin/python

import subprocess
import re
import sys
import time
import datetime
import gspread

# ===========================================================================
# Google Account Details
# ===========================================================================

# Account details for google docs
email       = 'you@somewhere.com'
password    = '$hhh!'
spreadsheet = 'SpreadsheetName'

# ===========================================================================
# Example Code
# ===========================================================================


# Login with your Google account
try:
  gc = gspread.login(email, password)
except:
  print "Unable to log in.  Check your email address/password"
  sys.exit()

# Open a worksheet from your spreadsheet using the filename
try:
  worksheet = gc.open(spreadsheet).sheet1
  # Alternatively, open a spreadsheet using the spreadsheet's key
  # worksheet = gc.open_by_key('0BmgG6nO_6dprdS1MN3d3MkdPa142WFRrdnRRUWl1UFE')
except:
  print "Unable to open the spreadsheet.  Check your filename: %s" % spreadsheet
  sys.exit()

# Continuously append data

# while(True) asemele loendur
  count = 0
  while count < 1:

  # Run the DHT program to get the humidity and temperature readings!

  output = subprocess.check_output(["./Adafruit_DHT", "2302", "4"]);
  print output
  matches = re.search("Temp =\s+([0-9.]+)", output)
  if (not matches):
	time.sleep(3)
	continue
  temp = float(matches.group(1))
  
  # search for humidity printout
  matches = re.search("Hum =\s+([0-9.]+)", output)
  if (not matches):
	time.sleep(3)
	continue
  humidity = float(matches.group(1))

  print "Temperature: %.1f C" % temp
  print "Humidity:    %.1f %%" % humidity
 
  # Append the data in the spreadsheet, including a timestamp
  try:
    values = [datetime.datetime.now(), temp, humidity]
    worksheet.append_row(values)
  except:
    print "Unable to append data.  Check your connection?"
    sys.exit()

#käsk täidetud, skripti seiskamine
  count = count +1
  else:
  sys.exit()

ei garanteeri, et tööle hakkab, testimine omal vastutusel.

Postitatud: 19.09.2013, 17:35
Postitas insippo
ma ei hakka pusima enam.Motion töötab rasbianiga nagu tigu.Panin arch-i uuesti tagasi.Archiga peab proovima sakis3g-d.Ruuter võtab omajagu voolu ja päikesepaneel ei taha ja ei suuda pilves ilmaga akut laadida niipalju kui vaja.

Postitatud: 19.09.2013, 20:38
Postitas chris
obundra kirjutas:ei garanteeri, et tööle hakkab, testimine omal vastutusel.
Ei hakka tõesti, sest on mõned vead:
* while tsükkel ei käivitu, sest ta on liigselt trepitud; sama käib ka eelneva 'count = 0' kohta,
* liigselt on trepitud ka viimane 'else:',
* punkt regulaaravaldises "Hum =\s+([0-9.]+)" on kahtlane; mõeldud on vist "Hum =\s+([\d\.]+)" (\d tähendab sama, mis 0-9).