Exemplo n.º 1
0
def read_save_data(save_data_path, key_index, default_value_list):
    result_list = {}
    if not os.path.exists(path.change_path_encoding(save_data_path)):
        return result_list
    for single_save_data in tool.read_file(save_data_path, tool.READ_FILE_TYPE_LINE):
        single_save_data = single_save_data.replace("\xef\xbb\xbf", "").replace("\n", "").replace("\r", "")
        if len(single_save_data) == 0:
            continue
        single_save_list = single_save_data.split("\t")

        if single_save_list[key_index] in result_list:
            output.print_msg("存档中存在重复行 %s" % single_save_list[key_index])
            tool.process_exit()

        # 去除前后空格
        single_save_list = map(lambda value: value.strip(), single_save_list)

        # 根据default_value_list给没给字段默认值
        index = 0
        for default_value in default_value_list:
            # _开头表示和该数组下标的值一直,如["", "_0"] 表示第1位为空时数值和第0位一致
            if default_value != "" and default_value[0] == "_":
                default_value = single_save_list[int(default_value.replace("_", ""))]
            if len(single_save_list) <= index:
                single_save_list.append(default_value)
            if single_save_list[index] == "":
                single_save_list[index] = default_value
            index += 1
        result_list[single_save_list[key_index]] = single_save_list
    return result_list
Exemplo n.º 2
0
def get_account_from_save_data(file_path):
    account_list = {}
    for line in tool.read_file(file_path, tool.READ_FILE_TYPE_LINE):
        line = line.replace("\n", "")
        account_info_temp = line.split("\t")
        account_list[account_info_temp[0]] = line
    return account_list
Exemplo n.º 3
0
def get_save_data_file_count():
    if not os.path.exists(SAVE_DATA_FILE_PATH):
        output.print_msg("save data %s not exist" % SAVE_DATA_FILE_PATH)
        return {}
    account_list = {}
    for line in tool.read_file(SAVE_DATA_FILE_PATH, tool.READ_FILE_TYPE_LINE):
        temp_list = line.replace("\n", "").split("\t")
        account_list[temp_list[PRIME_KEY_INDEX].decode("UTF-8")] = int(temp_list[COUNT_INDEX])
    return account_list
Exemplo n.º 4
0
def check_is_repeat():
    history = []
    for line in tool.read_file(SAVE_FILE_PATH, tool.READ_FILE_TYPE_LINE):
        temp_list = line.replace("\n", "").split("\t")
        if temp_list[NAME_COLUMN] in history:
            output.print_msg(temp_list[NAME_COLUMN])
        else:
            history.append(temp_list[NAME_COLUMN])
    return history
def get_account_from_save_data():
    account_list = {}
    if not os.path.exists(SAVE_DATA_PATH):
        return account_list
    for line in tool.read_file(SAVE_DATA_PATH, tool.READ_FILE_TYPE_LINE):
        line = line.replace("\n", "")
        account_info_temp = line.split("\t")
        account_list[account_info_temp[0]] = line
    return account_list
Exemplo n.º 6
0
def load_review_list():
    review_data = {
        "can_review_lists": [],
        "dlc_in_game": {},
        "review_list": [],
    }
    if not os.path.exists(REVIEW_DATA_PATH):
        return review_data
    review_data = tool.json_decode(tool.read_file(REVIEW_DATA_PATH),
                                   review_data)
    return review_data
Exemplo n.º 7
0
def reformat_save():
    new_lines = []
    for line in tool.read_file(OLD_SAVE_FILE_PATH, tool.READ_FILE_TYPE_LINE):
        temp_list = line.replace("\n", "").split("\t")
        new_list = list([])
        # 新旧字段逻辑
        new_list.append(temp_list[0])
        new_list.append(temp_list[1])
        new_list.append(temp_list[2])
        new_lines.append("\t".join(new_list))

    tool.write_file("\n".join(new_lines), NEW_SAVE_FILE_PATH,
                    tool.WRITE_FILE_TYPE_REPLACE)
Exemplo n.º 8
0
def load_discount_list():
    discount_game_list = []
    if not os.path.exists(DISCOUNT_DATA_PATH):
        return discount_game_list
    week_day = int(time.strftime("%w"))
    # 已超过本周API更新时间
    if (week_day > API_UPDATE_TIME_WEEKDAY) or (week_day == API_UPDATE_TIME_WEEKDAY and int(time.strftime("%H")) >= API_UPDATE_TIME_WEEKDAY):
        last_api_update_day = (datetime.datetime.today() + datetime.timedelta(days=API_UPDATE_TIME_WEEKDAY - week_day)).timetuple()
    #  获取上周API更新时间
    else:
        last_api_update_day = (datetime.datetime.today() + datetime.timedelta(days=API_UPDATE_TIME_WEEKDAY - week_day - 7)).timetuple()
    last_api_update_day = time.strptime(time.strftime("%Y-%m-%d " + "%02d" % API_UPDATE_TIME_HOUR + ":00:00", last_api_update_day), "%Y-%m-%d %H:%M:%S")
    last_api_update_time = time.mktime(last_api_update_day)
    if os.path.getmtime(DISCOUNT_DATA_PATH) < last_api_update_time < time.time():
        output.print_msg("discount game list expired")
        return discount_game_list
    discount_game_list = tool.json_decode(tool.read_file(DISCOUNT_DATA_PATH), discount_game_list)
    return discount_game_list
Exemplo n.º 9
0
def read_save_data(save_data_path, key_index, default_value_list):
    result_list = {}
    if not os.path.exists(tool.change_path_encoding(save_data_path)):
        return result_list
    for single_save_data in tool.read_file(save_data_path, 2):
        single_save_data = single_save_data.replace("\xef\xbb\xbf", "").replace("\n", "").replace("\r", "")
        if len(single_save_data) == 0:
            continue
        single_save_list = single_save_data.split("\t")

        # 根据default_value_list给没给字段默认值
        index = 0
        for default_value in default_value_list:
            # _开头表示和该数组下标的值一直,如["", "_0"] 表示第1位为空时数值和第0位一致
            if default_value != "" and default_value[0] == "_":
                default_value = single_save_list[int(default_value.replace("_", ""))]
            if len(single_save_list) <= index:
                single_save_list.append(default_value)
            if single_save_list[index] == "":
                single_save_list[index] = default_value
            index += 1
        result_list[single_save_list[key_index]] = single_save_list
    return result_list
Exemplo n.º 10
0
def get_file_url_from_log(log_path):
    log_data = tool.read_file(log_path)
    return re.findall("(http://[\S]*)", log_data)
Exemplo n.º 11
0
def get_save_file_name_list():
    member = []
    for line in tool.read_file(SAVE_FILE_PATH, tool.READ_FILE_TYPE_LINE):
        temp_list = line.replace("\n", "").split("\t")
        member.append(temp_list[NAME_COLUMN])
    return member
Exemplo n.º 12
0
def get_member_list():
    member = []
    for line in tool.read_file("member.txt", tool.READ_FILE_TYPE_LINE):
        temp_list = line.replace("\n", "").split("\t")
        member.append(temp_list[0])
    return member