首页 > 解决方案 > 如何在脚本中修改 if-else 逻辑以检索 T-14 天的数据

问题描述

我有一个现有脚本,用于提取 T 和 T-1 天的数据。我试图修改它提取两周的数据,但脚本无法搜索当前日期以外的日期

检查代码部分:

def parse_gov():
    reject_patterns = generate_reject_patterns()

    today_str = date.today().strftime('%Y.%m.%d')
    yesterday = date.today() - timedelta(days=14)
    yesterday_str = yesterday.strftime('%Y.%m.%d')
    #query_date = date.today()
    #query_date = yesterday

    query_last = '''select last sym, last source, last lastTimeStamp, last objectName...

    query_all = '''select objectName, IONrecType, sym, source, lastTimeStamp, objectName, ....

    def query(q, query_date):
        if query_date =  date.today() - timedelta(days=14):
            date_clause = "date <= {date}, ".format(date = query_date)
            kdbport = '1000' ( historical database)
        else:
            date_clause = ""
            kdbport = '1001' (current database)

标签: pythonscripting

解决方案


您的else部分没有触发,因为那里没有进行比较。你需要 query_date = date.today() - timedelta(days=14): 改为 query_date == (date.today() - timedelta(days=14)):

您总是==用于比较,=将值分配给变量。


推荐阅读