【python】python APScheduler 框架
python APScheduler 框架,模仿Java的Quartz框架寫的,強大給力。
它的主頁是:http://packages.python.org/APScheduler/index.html
提問的地方:http://groups.google.com/group/apscheduler (老外很認真的回答你的問題)
它的按照很簡單:參考主要的install就可以了,就兩三步
例子如下:
- from apscheduler.scheduler import Scheduler
- import time
- # Start the scheduler
- sched = Scheduler()
- def job_function():
- print "Hello World"
- print 'start to sleep'
- print 'wake'
- sched.daemonic = False
- sched.add_cron_job(job_function,day_of_week='mon-fri', hour='*', minute='0-59',second='*/5')
- sched.start()
這個是最簡單的例子(目前我初學,呵呵)
這裡要提到的是:
apscheduler會建立一個執行緒,這個執行緒預設是daemon=True,也就是預設的是執行緒守護的。
在上面的程式碼裡面,要是不加上sched.daemonic=False的話,這個指令碼就不會執行。
因為上面的指令碼要是沒有sched.daemonic=False的話,它會建立一個守護執行緒。這個過程中,會建立scheduler的例項。但是由於指令碼很小,執行速度很快,主執行緒mainthread會馬上結束,而此時定時任務的執行緒還沒來得及執行,就跟隨主執行緒結束而結束了。(守護執行緒和主執行緒之間的關係決定的)。要讓指令碼執行正常,必須設定該指令碼為非守護執行緒。sched.daemonic=False
=================== end ======================
補充:
- #-*-coding:utf-8-*-
- from apscheduler.scheduler import Scheduler
- def job_function(a):
- print a
- if __name__ == '__main__':
- hello = 'hello world'
- sched = Scheduler(daemonic=False) # 注意這裡,要設定 daemonic=False
- sched.add_cron_job(job_function, day_of_week='mon-fri', hour='*', minute='0-59', second='*/5', args=[hello]) # args=[] 用來給job函式傳遞引數
- sched.start()
- # ----------- 原始碼 -------------------------------
- # def add_cron_job(self, func, year=None, month=None, day=None, week=None,
- # day_of_week=None, hour=None, minute=None, second=None,
- # start_date=None, args=None, kwargs=None, **options):
- # """
- # Schedules a job to be completed on times that match the given
- # expressions.
- #
- # :param func: callable to run
- # :param year: year to run on
- # :param month: month to run on
- # :param day: day of month to run on
- # :param week: week of the year to run on
- # :param day_of_week: weekday to run on (0 = Monday)
- # :param hour: hour to run on
- # :param second: second to run on
- # :param args: list of positional arguments to call func with
- # :param kwargs: dict of keyword arguments to call func with
- # :param name: name of the job
- # :param jobstore: alias of the job store to add the job to
- # :param misfire_grace_time: seconds after the designated run time that
- # the job is still allowed to be run
- # :return: the scheduled job
- # :rtype: :class:`~apscheduler.job.Job`
- # """
- #
相關文章
- python 排程框架 apschedulerPython框架
- python APScheduler模組Python
- Python APScheduler介紹及使用Python
- Python任務排程模組APSchedulerPython
- python3使用pyinstaller打包apscheduler出的錯Python
- Python SQLALchemy框架PythonSQL框架
- 【Python】asyncio框架Python框架
- Python框架DjangoPython框架Django
- python常用框架Python框架
- Python Web框架PythonWeb框架
- python開發框架Python框架
- python的flask框架PythonFlask框架
- Python 框架介紹Python框架
- Python是什麼?Python有哪些框架?Python框架
- Python之Flask框架一PythonFlask框架
- Python之Selenium 框架Python框架
- Python中的Unittest框架Python框架
- Python之ORM框架SQLAlchemyPythonORM框架SQL
- python web框架的整理PythonWeb框架
- python爬蟲Scrapy框架Python爬蟲框架
- Python爬蟲—Scrapy框架Python爬蟲框架
- 【整理】Python常用的框架Python框架
- Python幾種主流框架Python框架
- python BDD 框架之lettucePython框架
- python爬蟲一般用什麼框架?六大Python框架Python爬蟲框架
- APScheduler 學習心得
- python測試框架-pytestPython框架
- 常用python爬蟲框架整理Python爬蟲框架
- python15種常用框架Python框架
- Python Web框架(URL/VIEWS/ORM)PythonWeb框架ViewORM
- 常見python爬蟲框架Python爬蟲框架
- 初識python web框架-- DjangoPythonWeb框架Django
- Python常用GUI框架有哪些?Python基礎入門PythonGUI框架
- 【總結】10款Python爬蟲框架!Python入門Python爬蟲框架
- Python Django框架是什麼?Python學習入門!PythonDjango框架
- 什麼是Python Web框架?Python入門知識!PythonWeb框架
- Python自動化測試框架有哪些?Python入門!Python框架
- Python相關爬蟲的框架有哪些?Python知識Python爬蟲框架