Lịch trình Python rõ ràng

Bộ lập lịch trình đang xử lý cho các công việc định kỳ sử dụng mẫu trình tạo để cấu hình. Lịch biểu cho phép bạn chạy các hàm Python [hoặc bất kỳ chức năng nào khác có thể gọi được] định kỳ theo các khoảng thời gian được xác định trước bằng cú pháp đơn giản, thân thiện với con người

Lấy cảm hứng từ bài viết của Adam Wiggins “Suy nghĩ lại về Cron” [bộ đệm của Google] và mô-đun Ruby đồng hồ

Đặc trưng

  • Một API đơn giản để sử dụng để lên lịch công việc

  • Rất nhẹ và không có phụ thuộc bên ngoài

  • Phạm vi kiểm tra tuyệt vời

  • Đã thử nghiệm trên Python 2. 7 và 3. 4

Cách sử dụng

$ pip install schedule
import schedule
import time

def job[]:
    print["I'm working..."]

schedule.every[10].minutes.do[job]
schedule.every[].hour.do[job]
schedule.every[].day.at["10:30"].do[job]
schedule.every[].monday.do[job]
schedule.every[].wednesday.at["13:15"].do[job]

while True:
    schedule.run_pending[]
    time.sleep[1]

Câu hỏi thường gặp

Thay cho tài liệu đầy đủ [sắp có], hãy xem bộ câu hỏi thường gặp này để biết giải pháp cho một số câu hỏi phổ biến

meta

Daniel Bader - @dbader_org - mail@dbader. tổ chức

Phân phối theo giấy phép MIT. xem PHÉP. txt để biết thêm thông tin

https. //github. com/dbader/lịch biểu

Lịch sử

0. 3. 2 [2015-07-02]

  • Đã khắc phục sự cố lập lịch công việc bằng funcools. một phần khi chức năng công việc không thành công. Cảm ơn @dylwhat

  • Đã khắc phục sự cố trong đó việc lên lịch chạy công việc >= 2 ngày một lần sẽ khiến quá trình thực thi ban đầu diễn ra sớm hơn một ngày. Cảm ơn @WoLfulus đã xác định điều này và đưa ra cách khắc phục

  • Đã thêm mục Câu hỏi thường gặp để mô tả cách lên lịch cho công việc chỉ chạy một lần

0. 3. 1 [2014-09-03]

  • Đã khắc phục sự cố với việc xử lý unicode trong thiết lập. py đã gây rắc rối trên Python 3 và Debian [https. //github. com/dbader/schedule/issues/27]. Cảm ơn @waghanza đã báo cáo

  • Đã thêm một mục Câu hỏi thường gặp để mô tả cách xử lý các chức năng công việc đưa ra ngoại lệ. Cảm ơn @mplewis

0. 3. 0 [2014-06-14]

  • Đã thêm hỗ trợ để lên lịch công việc vào các ngày trong tuần cụ thể. Thí dụ. lịch trình. mỗi[]. thứ ba. làm [công việc] hoặc lịch trình. mỗi[]. Thứ tư. tại ["13. 15"]. làm [công việc] [Cảm ơn @abultman. ]

  • Chạy thử nghiệm với Python 2. 7 và 3. 4. Trăn 3. 3 sẽ tiếp tục hoạt động nhưng chúng tôi không tích cực thử nghiệm nó trên CI nữa

0. 2. 1 [20-11-2013]

  • Đã sửa lịch sử [không thay đổi mã]

0. 2. 0 [2013-11-09]

  • Bản phát hành này giới thiệu hai tính năng mới theo cách tương thích ngược

  • Cho phép các công việc hủy bỏ việc thực hiện lặp đi lặp lại. Công việc có thể bị hủy bỏ bằng cách gọi lịch trình. cancel_job[] hoặc bằng cách trả lại lịch trình. CancelJob từ chức năng công việc. [Cảm ơn @cfrco và @matrixise. ]

  • Đã cập nhật at_time[] để cho phép các công việc đang chạy vào một thời điểm cụ thể mỗi giờ. Thí dụ. mỗi[]. giờ. tại['. 15']. do[job] sẽ chạy công việc 15 phút sau mỗi giờ. [Cảm ơn @mattss. ]

  • Tái cấu trúc các bài kiểm tra đơn vị để mô phỏng ngày giờ theo cách rõ ràng hơn. [Cảm ơn @matts. ]

0. 1. 11 [2013-07-30]

  • Đã khắc phục sự cố next_run[] đưa ra ngoại lệ ValueError khi hàng đợi công việc trống. Cảm ơn @dpagano đã chỉ ra điều này và cảm ơn @mrhwick đã nhanh chóng đưa ra cách khắc phục

    con trăn. Thư viện lịch trình

    Cải thiện bài viết

    Lưu bài viết

    Thích bài viết

    • Độ khó. Dễ dàng
    • Cập nhật lần cuối. 11 tháng 4 năm 2022

  • Đọc
  • Bàn luận
  • khóa học
  • Luyện tập
  • Băng hình
  • Cải thiện bài viết

    Lưu bài viết

    Lịch trình là công cụ lập lịch trình đang xử lý cho các công việc định kỳ sử dụng mẫu trình tạo để định cấu hình. Lịch biểu cho phép bạn chạy các hàm Python [hoặc bất kỳ chức năng nào khác có thể gọi được] định kỳ theo các khoảng thời gian được xác định trước bằng cú pháp đơn giản, thân thiện với con người
    Thư viện lịch trình được sử dụng để lên lịch một nhiệm vụ vào một thời điểm cụ thể mỗi ngày hoặc một ngày cụ thể trong tuần. Chúng tôi cũng có thể đặt thời gian ở định dạng 24 giờ khi một tác vụ sẽ chạy. Về cơ bản, Thư viện lịch trình khớp thời gian hệ thống của bạn với thời gian đã lên lịch do bạn đặt. Khi thời gian đã lên lịch và thời gian hệ thống khớp với chức năng công việc [chức năng lệnh được lên lịch] được gọi

    Cài đặt

     $ pip install schedule  

    lịch trình. lớp lập lịch trình

    • lịch trình. mỗi [khoảng = 1]. Gọi tất cả trên phiên bản lập lịch trình mặc định. Lên lịch công việc định kỳ mới
    • lịch trình. run_pending[]. Gọi run_pending trên phiên bản lập lịch trình mặc định. Chạy tất cả các công việc được lên lịch để chạy
    • lịch trình. run_all[delay_seconds=0]. Gọi run_all trên phiên bản lập lịch trình mặc định. Chạy tất cả các công việc bất kể chúng có được lên lịch để chạy hay không
    • lịch trình. idle_seconds[]. Gọi idle_seconds trên phiên bản lập lịch trình mặc định
    • lịch trình. next_run[]. Gọi next_run trên phiên bản lập lịch trình mặc định. Ngày giờ khi công việc tiếp theo sẽ chạy
    • lịch trình. cancel_job[công việc]. Gọi cancel_job trên phiên bản lập lịch trình mặc định. Xóa công việc đã lên lịch

    lịch trình. Lớp công việc [khoảng thời gian, bộ lập lịch = Không]

    Một công việc định kỳ như được sử dụng bởi Scheduler
     

    Thông số
    khoảng thời gian. Đại lượng của một đơn vị thời gian nhất định
    Người lập kế hoạch. Phiên bản Trình lập lịch biểu mà công việc này sẽ tự đăng ký sau khi được định cấu hình đầy đủ trong Công việc. làm[]

    Các phương pháp cơ bản cho lịch trình. Công việc
     

    • tại [time_str]. Lên lịch công việc mỗi ngày vào một thời điểm cụ thể. Cách gọi này chỉ hợp lệ đối với các công việc được lên lịch để chạy mỗi N ngày
      Thông số. time_str – Một chuỗi trong XX. định dạng YY.  
      trả lại. Ví dụ công việc được gọi
    • làm [job_func, *args, **kwargs]. Chỉ định job_func sẽ được gọi mỗi khi công việc chạy. Mọi đối số bổ sung được chuyển đến job_func khi công việc chạy
      Thông số. job_func – Chức năng được lên lịch
      trả lại. Ví dụ công việc được gọi
    • chạy[]. Chạy công việc và lên lịch lại ngay lập tức.  
      trả lại. Giá trị trả về được trả về bởi job_func
    • đến [mới nhất]. Lên lịch cho công việc chạy ở khoảng thời gian không đều [ngẫu nhiên]. Ví dụ: mọi [A]. đến [B]. giây thực thi chức năng công việc cứ sau N giây sao cho A

Chủ Đề