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小时执行一次

  • 相关阅读:
    最小生成树(模板)
    排序
    kmp模板
    图书管理系统
    顺序表的创建
    洛谷p1090合并果子(优先队列或堆)
    洛谷P1464Function(逆向递推递归+记忆化)
    ueditor设置
    php isset()和 in_array()
    php 判断空
  • 原文地址:https://www.cnblogs.com/wenm1128/p/11776895.html
Copyright © 2011-2022 走看看