zoukankan      html  css  js  c++  java
  • 爬虫设置定时任务

    用当前时间和设定的时间比较判断

    import time
    #
    设置定时 def main(h, m): while True: now = datetime.datetime.now() #获取当前时间 print (now.hour, now.minute) #判断时间 if now.hour in h and now.minute in m: doSth() time.sleep(60) if __name__ =='__main__': main(h=[8,10,12,14,16,18,20], m=[0,30])

    直接使用timer类

    import time
    import os
    while 1:
        os.system("scrapy crawl News")
    
    time.sleep(86400)

    使用sched

    import sched
    # 初始化sched模块的scheduler类
    # 第一个参数是一个可以返回时间戳的函数,第二个参数可以定时未到之前阻塞
    schedule = sched.scheduler(time.time, time.sleep)
    
    #被周期性调度出发的函数
    def fun():
        os.system("scrapy crawl News")
    
    def perform1(inc):
        schedule.enter(inc,0, perform1, (inc,))
        func()  # 需要周期执行函数
    
    def mymain():
        schedule.enter(0,0, perform1, (86400))
    
    if __name__ = "__main__":
        mymain()
        schedule.run() # 开始运行,直到计划时间队列变为空为止
     

    使用Crontab实现Scrapy爬虫的定时执行

    0 */24 * * * cd /data/spider && scrapy crawl article 

    ‘*/xx’等价于‘*’表示每xx小时执行一次

  • 相关阅读:
    [JSOI2015]最小表示
    [洛谷2002]消息扩散
    [洛谷1726]上白泽慧音
    [CodeVS2822]爱在心中
    [POJ2186]Popular Cows
    [洛谷1991]无线通讯网
    [CQOI2009]跳舞
    [洛谷1342]请柬
    [USACO07JAN]Balanced Lineup
    [NOIp2003提高组]神经网络
  • 原文地址:https://www.cnblogs.com/wenm1128/p/11776895.html
Copyright © 2011-2022 走看看