Exemplo n.º 1
0
def CreatePlan(command):
    """
    创建指定命令任务
    :param command:
    :return:
    """
    cron = Plan(command)
    cron.command('node ' + path + '/index.js ' + command, every='1.day', at='16:51')
    cron.run('write')
Exemplo n.º 2
0
#
# It's helpful to understand cron before proceeding.
# http://en.wikipedia.org/wiki/Cron
#
# Learn more: http://github.com/fengsp/plan

import click
from plan import Plan

cron = Plan("surprise", path='/home/apps/surprise', environment={'DJANGO_SETTINGS_MODULE': 'config.settings.prod'})
cron.script('manage.py runscript collect_liwushuo_items', every='9.hour')
# cron.script('manage.py runjob collect_nanyibang_items', every='9.hour')
# cron.script('manage.py runjob n2oid', every='3.hour')

cron.script('manage.py runjob tmc', every='5.minute')
cron.script('manage.py runjob trend', every='16.hour')
cron.script('manage.py runjob reward', every='1.day')

cron.command('/home/apps/surprise/crontab/db_backup.sh', every='15.minute')
cron.command('/usr/bin/rsync -av /home/apps/surprise /home/apps/backups', every='15.day')


@click.command()
@click.argument('action', default='check')
def execute(action):
    cron.run(action)


if __name__ == "__main__":
    execute()
Exemplo n.º 3
0
#coding:utf-8
#!usr/bin/env python
'''
@author:lucas [email protected]
@description:启动python分析系统
@create date:2017/04/09
@see:https://pythonhosted.org/plan/
'''
from plan import Plan
'''
add:实时运行
* * * * * sleep 10;python /usr/local/pyTraff/main_temp.py
* * * * * sleep 20;python /usr/local/pyTraff/main_temp.py
* * * * * sleep 30;python /usr/local/pyTraff/main_temp.py
* * * * * sleep 40;python /usr/local/pyTraff/main_temp.py
* * * * * sleep 50;python /usr/local/pyTraff/main_temp.py

'''
cron = Plan(name='root',user='******')
    
##添加任务,按小时运行
cron.command('python /usr/local/pyTraff/main.py', every='10 * * * *')
cron.command('python /usr/local/pyTraff/originIP.py', every='12 * * * *')
cron.command('python /usr/local/pyTraff/protocol.py', every='14 * * * *')
cron.command('python /usr/local/pyTraff/user_traff.py', every='16 * * * *')
cron.command('python /usr/local/pyTraff/respIpTop.py', every='18 * * * *')
cron.command('python /usr/local/pyTraff/sessionTop.py', every='20 * * * *')
cron.command('python /usr/local/pyTraff/user_web.py', every='8 * * * *')
cron.run('update')
Exemplo n.º 4
0
Arquivo: cron.py Projeto: ouchao/cron
	jobname	='job%s-%s'%(str(j['id']),j['every'])
	logsdir	='%s/Logs/cronlogs/%s'%(os.getcwd(),jobname)

	try:
		os.makedirs(logsdir)
	except Exception,e:
		pass


	exec_command='PATH=$PATH && %s'%j['cmd']
	output      = dict(stdout='%s/%s.stdout.log'%(logsdir,jobname), stderr='%s/%s.stderr.log'%(logsdir,jobname) )

	cron = Plan(name='job'+str(j['id']))
	if j.has_key('at') :
		r=cron.command(exec_command,every=j['every'],at=j['at'],output=output,)
	else:
		r=cron.command(exec_command,every=j['every'],output=output,)

	cron.run(j['action'])
	return True

if __name__ == '__main__':
	#job1={'id':1,'cmd':'date','every':'2.day','action':'update','at':'hour.12 minute.15 minute.45'}
	job2={'id':2,'cmd':'/home/qilong/python/cron/1.sh','every':'1.hour','action':'update','at':'minute.10'}
	crontab(job2)

	#print job2
	#job2=sys.argv[1]
	#crontab(eval(job2))
Exemplo n.º 5
0
# -*- coding: utf-8 -*-

# Use this file to easily define all of your cron jobs.
#
# It's helpful to understand cron before proceeding.
# http://en.wikipedia.org/wiki/Cron
#
# Learn more: http://github.com/fengsp/plan

from plan import Plan

cron = Plan("commands")

cron.command('top', every='4.hour', output=dict(stdout='/tmp/top_stdout.log',
                                                stderr='/tmp/top_stderr.log'))
cron.command('yourcommand', every='sunday', at='hour.12 minute.0 minute.30')
# more commands here


if __name__ == "__main__":
    cron.run()
Exemplo n.º 6
0
import argparse
import os

from plan import Plan

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
SCRIPT_NAME = "ping-app/cron.py"
SCRIPT_NAME_PATH = os.path.join(BASE_DIR, SCRIPT_NAME)

cron = Plan()

cron.command(f"python3 {SCRIPT_NAME_PATH}", every="1.minute")

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("-s", "--start", action="store_true")
    parser.add_argument("-e", "--end", action="store_true")
    args = parser.parse_args()

    if args.start:
        os.system(f"python3 {SCRIPT_NAME_PATH}  --init"
                  )  # call the command first and then call every 1.minutes
        cron.run("write")
    elif args.end:
        cron.run("clear")
    else:
        cron.run("clear")
Exemplo n.º 7
0
#
# Learn more: http://github.com/fengsp/plan

import os
from os.path import join as pjoin
from plan import Plan

dir_path = os.path.dirname(os.path.realpath(__file__))

cron = Plan(
    "scripts",
    path=pjoin(dir_path, '../scrape'),
    environment={'DJANGO_SETTINGS_MODULE': 'scrape.settings_production'}
)

# register one command, script or module
#  cron.command('command', every='1.day')
#  cron.script('script.py', path='/web/yourproject/scripts', every='1.month')
#  cron.module('calendar', every='feburary', at='day.3')

cron.command('cd %s && DJANGO_SETTINGS_MODULE=scrape.settings_production $HOME/venv/bin/scrapy crawl eoaient' % (pjoin(dir_path, '../scrape/crawler')),
    every='2.day', at='minute.48')
cron.command('cd %s && DJANGO_SETTINGS_MODULE=scrape.settings_production $HOME/venv/bin/scrapy crawl ck0tp' % (pjoin(dir_path, '../scrape/crawler')),
    every='3.day', at='minute.12')

cron.script('manage.py extoon_info', every='5.hour', at='minute.30')
cron.script('manage.py extoon_description', every='6.hour', at='minute.15')

if __name__ == "__main__":
    cron.run('update')
Exemplo n.º 8
0
# -*- coding: utf-8 -*-
from plan import Plan

cron = Plan()

output = dict(stdout='/var/log/stdout.log', stderr='/var/log/stderr.log')

cron.command('top', every='1.hour', output=output)
cron.command('echo ok', path='/home', every='1.minute', output=output)

if __name__ == '__main__':
    cron.run("write")
Exemplo n.º 9
0
# -*- coding: utf-8 -*-

# Use this file to easily define all of your cron jobs.
#
# It's helpful to understand cron before proceeding.
# http://en.wikipedia.org/wiki/Cron
#
# Learn more: http://github.com/fengsp/plan

from plan import Plan

cron = Plan()

cron.command('top', every='4.hour', output=dict(stdout='/tmp/top_stdout.log',
                                                stderr='/tmp/top_stderr.log'))
cron.script('script.py', every='1.day', path='/web/yourproject/scripts',
                             environment={'YOURAPP_ENV': 'production'})

if __name__ == "__main__":
    cron.run()
Exemplo n.º 10
0
from plan import Plan

cron = Plan()

cron.command('python /usr/bin/motor.py -m motor4 -t 12 ', every='50.minute')
if __name__ == '__main__':
    cron.run('write')
from plan import Plan

cron = Plan()

cron.command('python /vagrant/stackoverflow.py', every='1.day', at='12:05')

if __name__ == '__main__':
    cron.run('write')
# Package Details:
# http://plan.readthedocs.org/index.html

import os
from plan import Plan

cron = Plan()

python_path = "/Users/RichardAfolabi/anaconda/envs/python3/bin/python "
job_path = os.path.join(os.getcwd(), "geo_ip_job.py")

cmd = python_path + job_path

cron.command(cmd, every='2.minute')

cron.command()

if __name__ == '__main__':
    cron.run('write')
Exemplo n.º 13
0
import argparse
import os

from plan import Plan

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
SCRIPT_NAME = "ping-app/start_cron.py"
SCRIPT_NAME_PATH = os.path.join(BASE_DIR, SCRIPT_NAME)

cron = Plan()

cron.command(f"python3 {SCRIPT_NAME_PATH} --start",
             every="1.day",
             at="hour.9 minute.0")

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("-s", "--start", action="store_true")
    parser.add_argument("-e", "--end", action="store_true")
    args = parser.parse_args()

    if args.start:
        cron.run("write")
    elif args.end:
        cron.run("clear")
    else:
        cron.run("clear")
from plan import Plan

cron = Plan()

cron.command('python /vagrant/stackoverflow.py', every='1.day', at='12:05')


if __name__ == '__main__':
    cron.run('write')
Exemplo n.º 15
0
Arquivo: ncbk.py Projeto: notcrud/ncbk
#from crontab import CronTab
from plan import Plan

'''
This script uses python-crontab to run a cron job every day at noon,
to save a dump of all the keys in the Redis datastore that's used 
by notCRUD.
'''

'''
tab = CronTab(user='******')
command = '/usr/bin/redis-cli bgsave'
cron_job = tab.new(cmd, comment='This command dumps Redis keys and saves them.')
cron_job.minute().on(0)
cron_job.hour().on(12)
'''

cron = Plan()
cron.command('/usr/bin/redis-cli bgsave', every='1.day', at='12:00')

if __name__ == '__main__':
	cron.run('write')
Exemplo n.º 16
0
from plan import Plan

cron = Plan()

cron.command('python script.py', every='1.minute')
# cron.script('script.py', every='1.day', path='/web/yourproject/scripts',
                         # environment={'YOURAPP_ENV': 'production'})

# if __name__ == "__main__":
cron.run(run_type='write')
Exemplo n.º 17
0
import os
from os.path import join as pjoin
from plan import Plan

dir_path = os.path.dirname(os.path.realpath(__file__))

cron = Plan(
    "scripts",
    path=pjoin(dir_path, '../scrape'),
    environment={'DJANGO_SETTINGS_MODULE': 'scrape.settings_production'}
)

# register one command, script or module
#  cron.command('command', every='1.day')
#  cron.script('script.py', path='/web/yourproject/scripts', every='1.month')
#  cron.module('calendar', every='feburary', at='day.3')

cron.command('cd %s && $HOME/venv/bin/scrapy crawl toonchar' % (pjoin(dir_path, '../scrape/crawler')), every='1.day', at='minute.48')
cron.script('manage.py profile', every='12.hour', at='minute.24')
cron.script('manage.py actress', every='3.day', at='minute.12')
cron.script('manage.py feed', every='2.hour', at='minute.36')

cron.script('manage.py bing_image_char', every='10.day', at='minute.7')
cron.script('manage.py bing_image_toon', every='7.day', at='minute.14')
cron.script('manage.py bing_image_diva', every='4.day', at='minute.21')
cron.script('manage.py bing_image_tag', every='5.day', at='minute.28')

if __name__ == "__main__":
    cron.run('update')
Exemplo n.º 18
0
from plan import Plan

cron = Plan()

cron.command('python /home/pi/motor.py -m motor4 -t 5 ', every='1.hour')
cron.command('python /home/pi/motor.py -m motor2 -t 5 ', every='1.hour')
cron.command('python /home/pi/motor.py -m motor1 -t 20 ', every='1.hour')

if __name__ == '__main__':
    cron.run('write')

from plan import Plan

cron = Plan()

cron.command('python /vagrant/stackoverflow.py', every='1.day', at='12:05')
cron.command('python /vagrant/questions_monthly.py', every='1.month')
cron.command('python /vagrant/sendEmail.py', every='1.month')



if __name__ == '__main__':
    cron.run('write')
Exemplo n.º 20
0
Arquivo: run.py Projeto: scalaview/leo
from plan import Plan
import os

if __name__ == "__main__":
    ROOT_PATH = os.path.dirname(os.path.abspath(__file__))
    cron = Plan("commands")
    cron.command(
        '%s/sync_order_state_script.sh %s/..' % (ROOT_PATH, ROOT_PATH),
        every='1.minute',
        output=dict(stdout='%s/../log/sync_order_state_stdout.log' % ROOT_PATH,
                    stderr='%s/../log/sync_order_state_stderr.log' %
                    ROOT_PATH))

    cron.run("check")
    cron.run("update")
Exemplo n.º 21
0
class Deployment(BaseDeployment):
    python = os.path.join(sys.prefix, "bin", "python")

    def __init__(self,
                 commands=None,
                 script=None,
                 crons=None,
                 config=None,
                 need_sudo=False,
                 supervisor_conf_path="/etc/supervisord.d/"):
        self.need_sudo = need_sudo
        self.supervisor_conf_path = supervisor_conf_path
        self.crons = self.get_crons(crons)
        self.scripts = self.get_scripts(script)
        self.commands = self.get_commands(commands)
        self.home = os.path.dirname(os.path.abspath(self.__module__))
        self.config = Config(self.home, config)
        self.cron = Plan(self.config.project)
        self.init_tasks()

    def init_tasks(self):
        for name, cmd in self.commands:
            self.config.add(name, cmd)
        for name, cmd in self.scripts:
            self.config.add(name, cmd)
        for cron in self.crons:
            self.cron.command(cron)

    def get_scripts(self, script_obj):
        if script_obj is None:
            return []
        else:
            # 存放脚本文件名称
            script_file_name = os.path.abspath(
                sys.modules[script_obj.__module__].__file__)
            scripts = [
                name for name in dir(script_obj) if not name.startswith("_")
            ]
            return [(script, f"{self.python} -u {script_file_name} {script}")
                    for script in scripts]

    def get_commands(self, commands):
        name_commands = []
        if commands:
            name_commands = commands
        return name_commands

    def get_crons(self, crons_config):
        crons = []
        if crons:
            crons = crons_config
        return crons

    def update_supervisor(self, file):
        if self.need_sudo:
            code1 = os.system(f"sudo mv {file} {self.supervisor_conf_path}")
            code2 = os.system("sudo supervisorctl update")
        else:
            code1 = os.system(f"mv {file} {self.supervisor_conf_path}")
            code2 = os.system("supervisorctl update")
        return code1 or code2

    def update_cron(self, action):
        try:
            self.cron.update_crontab(action)
        except PlanError:
            pass

    def start(self):
        config_file = self.config.export()
        self.update_cron("update")
        return self.update_supervisor(config_file)

    def stop(self):
        config_file = self.config.export(content="")
        self.update_cron("clear")
        return self.update_supervisor(config_file)
Exemplo n.º 22
0
# -*- coding: utf-8 -*-

# Use this file to easily define all of your cron jobs.
#
# It's helpful to understand cron before proceeding.
# http://en.wikipedia.org/wiki/Cron
#
# Learn more: http://github.com/fengsp/plan

from plan import Plan

cron = Plan("commands")

cron.command('top',
             every='4.hour',
             output=dict(stdout='/tmp/top_stdout.log',
                         stderr='/tmp/top_stderr.log'))
cron.command('yourcommand', every='sunday', at='hour.12 minute.0 minute.30')
# more commands here

if __name__ == "__main__":
    cron.run()
Exemplo n.º 23
0
from plan import Plan
import os

cron = Plan()

crontabDir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'crontab')

hours = 'hour.19 hour.20 hour.21 hour.22 hour.23 hour.0 hour.1 hour.2 hour.3 hour.4 hour.5 hour.6 hour.7'

########################################################################
# 定时spider
name = 'cron_spider'
cron.command('flock -xn /tmp/%s.lock -c %s.sh' % (name, os.path.join(crontabDir, name)), every='1.minute')



########################################################################
# phash计算
name = 'cron_phash'
cron.command('flock -xn /tmp/%s.lock -c %s.sh' % (name, os.path.join(crontabDir, name)), every='1.day', at=hours)


########################################################################
# 匹配计算
name = 'cron_match'
cron.command('flock -xn /tmp/%s.lock -c %s.sh' % (name, os.path.join(crontabDir, name)), every='1.day',  at=hours)


########################################################################
# 匹配计算
name = 'cron_itemmatch'
Exemplo n.º 24
0
from plan import Plan
import os

if __name__ == "__main__":
    ROOT_PATH = os.path.dirname(os.path.abspath(__file__))
    cron = Plan("commands")
    # online
    cron.command('/usr/local/bin/node %s/ghost/online.js' % ROOT_PATH,
                 every='1.day',
                 at="hour.21 minute.30",
                 output=dict(stdout='%s/log/online_stdout.log' % ROOT_PATH,
                             stderr='%s/log/online_stderr.log' % ROOT_PATH))
    # offline
    cron.command('/usr/local/bin/node %s/ghost/offline.js' % ROOT_PATH,
                 every='1.day',
                 at="hour.7",
                 output=dict(stdout='%s/log/offline_stdout.log' % ROOT_PATH,
                             stderr='%s/log/offline_stderr.log' % ROOT_PATH))

    cron.run("check")
    cron.run("write")
Exemplo n.º 25
0
    today = games[games.date_utc.dt.date == mydate]

    curr_date = datetime.datetime.today()
    run_date = curr_date + datetime.timedelta(minutes=1)

    print(datetime.datetime.today())
    print(run_date)
    print(run_date.strftime('%H:%M'))

    min = run_date.minute
    hour = run_date.hour
    month = run_date.month
    dom = run_date.day
    dow = run_date.weekday() + 1
    year = run_date.year

    print(min, hour, month, dom, dow)

    cron = Plan()
    command3 = '/usr/local/bin/python3 /Users/mc/Desktop/rugby-pass-scraper/scrape_match.py'
    every = '%s %s %s %s %s' % (
        min,
        hour,
        dom,
        month,
        dow,
    )
    cron.command(command3, every=every, at=str(hour) + ':' + str(min))
    cron.command(command3, every=every, at=str(hour) + ':' + str(min + 1))
    cron.run('write')
Exemplo n.º 26
0
from plan import Plan
import os

cron = Plan()

crontabDir = os.path.join(os.path.dirname(os.path.abspath(__file__)),
                          'crontab')

hours = 'hour.19 hour.20 hour.21 hour.22 hour.23 hour.0 hour.1 hour.2 hour.3 hour.4 hour.5 hour.6 hour.7'

########################################################################
# 定时spider
name = 'cron_spider'
cron.command('flock -xn /tmp/%s.lock -c %s.sh' %
             (name, os.path.join(crontabDir, name)),
             every='1.minute')

########################################################################
# phash计算
name = 'cron_phash'
cron.command('flock -xn /tmp/%s.lock -c %s.sh' %
             (name, os.path.join(crontabDir, name)),
             every='1.day',
             at=hours)

########################################################################
# 匹配计算
name = 'cron_match'
cron.command('flock -xn /tmp/%s.lock -c %s.sh' %
             (name, os.path.join(crontabDir, name)),
             every='1.day',
Exemplo n.º 27
0
# -*- coding: utf-8 -*-
"""
    demo
    ~~~~

    :copyright: (c) 2014 by Shipeng Feng.
    :license: BSD, see LICENSE for more details.
"""

from plan import Plan

cron = Plan()

cron.command('ls /tmp', every='1.day', at='12:00')
cron.command('pwd', every='2.month')
cron.command('date', every='weekend')

if __name__ == "__main__":
    cron.run()
Exemplo n.º 28
0
from plan import Plan

cron = Plan()

cron.command('python auto_weibo_api.py', every='1.day', at='12:00')

if __name__ == "__main__":
    cron.run()