#!/usr/bin/env python3 # -- coding:utf-8 -- # @Author: markushammered@gmail.com # @Development Tool: PyCharm # @Create Time: 2022/2/3 # @File Name: app.py import json from flask import Flask from flask import request from flask import Response from flask import make_response from flask import render_template from flask import send_from_directory app = Flask(__name__) def is_new_user(name: str) -> str: """ 判断填入的参数是否为已有本地已有 如果有则该名称值加一 如果没有则新建一个 :param name: :return: """ with open('./static/data.json', 'r', encoding='utf-8') as fp: try: data = json.load(fp) except json.decoder.JSONDecodeError: with open('./static/data.json', 'w', encoding='utf-8') as init_fp: json.dump({}, init_fp) all_user = data.keys() try: if name in all_user: # 加次数 data[name] += 1 return str(data[name]) else: data[name] = 0 # 加用户 return str(0) finally: with open('./static/data.json', 'w', encoding='utf-8') as dump: json.dump(data, dump) def build_page(name: str) -> str: """ 渲染最终的页面 :param name: :return: """ count = is_new_user(name) if count == 0: # 新id生成十个0 return '0000000000' else: if len(str(count)) <= 10: zero_counter = 10 - len(str(count)) final_number = '0' * zero_counter + str(count) return render_template('index.html', owner=name, b64_0=f'./static/number/{final_number[0]}.svg', b64_1=f'./static/number/{final_number[1]}.svg', b64_2=f'./static/number/{final_number[2]}.svg', b64_3=f'./static/number/{final_number[3]}.svg', b64_4=f'./static/number/{final_number[4]}.svg', b64_5=f'./static/number/{final_number[5]}.svg', b64_6=f'./static/number/{final_number[6]}.svg', b64_7=f'./static/number/{final_number[7]}.svg', b64_8=f'./static/number/{final_number[8]}.svg', b64_9=f'./static/number/{final_number[9]}.svg' ) def arg_not_be_full() -> Response: """ 参数不完整 :return: """ response = make_response('