日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

apscheduler 绿色版

發布時間:2024/4/15 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 apscheduler 绿色版 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

由于依賴EntryPoint,因此apscheduler在離線的方式(直接拷貝然后引用)使用時,會報錯。

錯誤信息類似: No trigger by the name “interval/cron/date” was found

原因:

基類的構造函數依賴于EntryPoint, 如下:

class BaseScheduler(six.with_metaclass(ABCMeta))://..._trigger_plugins = dict((ep.name, ep) for ep in iter_entry_points('apscheduler.triggers'))

?

也就是說,想啥都不用改直接用,必需pip/easy_install來安裝。

?

破解如下, 修改BaseScheduler 的類變量 _trigger_plugins

from apscheduler.triggers.cron import CronTrigger from apscheduler.triggers.date import DateTrigger from apscheduler.triggers.interval import IntervalTrigger class BaseScheduler(six.with_metaclass(ABCMeta)):#_trigger_plugins = dict((ep.name, ep) for ep in iter_entry_points('apscheduler.triggers'))_trigger_plugins ={'cron':CronTrigger, 'date':DateTrigger, 'interval':IntervalTrigger}

?

同時修改_create_plugin_instance方法, 將

plugin_cls = class_container[alias] = plugin_container[alias].load()

改為

plugin_cls = class_container[alias] = plugin_container[alias]#.load()

如此,便將apscheduler變成了綠色免安裝庫。

?

為何這個lib要利用EntryPoint?有何好處?

  一般EntryPoints的集合行成統一的“注冊表”,方便應用間的簡單調用(無需關注太多細節)。

因此可以用來制作插件 。 (但缺點是必需通過pip/easy_install安裝。)

  apscheduler使用plugin調用自身的注冊信息,此處看不明白。

?

轉載請注明本文來源:http://www.cnblogs.com/Tommy-Yu/p/5607841.html,謝謝!

轉載于:https://www.cnblogs.com/Tommy-Yu/p/5607841.html

總結

以上是生活随笔為你收集整理的apscheduler 绿色版的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。