import xlwt
import os
import xlwings as xw
import datetime
# 建行全局函数分为二部分  第一 写入数据(0创建目录和Excel并新建重命名,1 读取页面所有的数据,2开始写入表格)
# 第二部分是截图(创建时间格式的目录,然后保存图片)
#0 创建目录并新建excel重命名
def fond_create_name(fond_name):
    newdir0 = r"E:/fund_data11"
    if not os.path.exists(newdir0):
        os.makedirs(newdir0)
    workbook = xlwt.Workbook(encoding='utf-8')
        # 创建sheet
    data_sheet = workbook.add_sheet(fond_name)
    excel_dir = newdir0 + '/' + fond_name + '.xls'
    workbook.save(excel_dir)
    return excel_dir
# if __name__ == "__main__":
#     fond_create_name("东吴啊")
# 2 写入数据(前提先获取数据)
def write_data(fond_name):
    # list1 = get_data_all_1() #获取读取数据
    excel_dir = fond_create_name(fond_name) #创建目录并新建excel重命名
    list1 = [1,3,4,1,1,2,3,4,5,6,6,4,3,99,775,4,3,222,35,45,546,47]
    # print(list1)
    iters = [iter(list1)] * 9
    a_data = list(zip(*iters))
    # print(a_data)
    num = '3'
    for v in a_data:
        b_num = 'A' + str(num)
        v = list(v)  # 本身是个生成器 不加list是不能写入成功
        # print('v',v)
        wb = xw.Book(excel_dir)
        sht = wb.sheets[0]
        sht.range(b_num).value = v
        num = str(int(num) + 1)
        wb.save()
    print("写入成功111")
    return ('写入成功')
# write_data("王小天") #全局函数调用位置1================================================
# 3 以前一天时间命令的完整目录(重新命名目录名字和时间格式)
def time_dir(fund_dir):
    now_time = datetime.datetime.now()
    yesterday = now_time + datetime.timedelta(days=-1)
    yesterday = yesterday.strftime('%Y%m%d')
    newdir = "E:\\fund_data\\" + fund_dir + "\\pic" + str(yesterday)
    print(newdir,"-========")
    if not os.path.exists(newdir):
        os.makedirs(newdir)
    print('====newdir====', newdir)
    return newdir
# 4截图 命名保存
def move_pic(fund_dir, fund_name):
    newdir = time_dir(fund_dir)
    path = "E:\\fund_data\\imgsss\\"  # 截图的临时目录临时目录
    if not os.path.exists(path):
        os.makedirs(path)
    dirs_pic = os.listdir(path)  # 把获取的图片名字按字母排序
    print(dirs_pic)
    # 对以上获取按字母排序的目录文件列表排序   以是按照创建时间对文件排序
    oldfile_list = sorted(dirs_pic, key=lambda x: os.path.getctime(os.path.join(path, x)))
    # dir_list = sorted(dir_list,key=lambda x: os.path.getctime(os.path.join(DIR,x)))
    oldfile = path + oldfile_list[0] #从临时目录去除按时间先后的图片 完整路径
    print("1oldfile=== =========", oldfile)
    # 获取临时目录下的文件列表
    newfile = newdir + "\\" + fund_name + ".jpg"
    # 新文件名字,bankname是传入的参数
    # print(oldfile)
    # print(newfile)
    if os.path.exists(newfile):  # 必须先判断目标目录是否存在文件
        os.remove(newfile)#如果存在相同的就删除
    os.rename(oldfile, newfile)
move_pic("基金", "小金2")#全局函数调用处2=================================================