Python: open excel file

 https://github.com/dhellmann/pymotw-3

https://github.com/xlwings/xlwings

https://pypi.org/project/pypiwin32/
https://github.com/Googulator/pypiwin32
https://gist.github.com/gabemarshall/9372073

 

import xlwings as xw;
from pathlib import Path;
import time;


# 多文件设置密码 Geovin Du 涂聚文 xlrd、xlwt、xlwings、win32com.client
# https://docs.xlwings.org/en/stable/api.html
# open(fullname, update_links=None, read_only=None, format=None, password=None, write_res_password=None, ignore_read_only_recommended=None, origin=None, delimiter=None, editable=None, notify=None, converter=None, add_to_mru=None, local=None, corrupt_load=None)

app =xw.App(visible=False,add_book=False);
folder_path=Path('C:\\Users\\geovindu\\Documents\\Visual Studio 2017\\Projects\\PythonTickt\\PythonTickt\\excel\\');
file_list=folder_path.glob('*.xls*');
for i in file_list:
    workbook=app.books.open(i)
    workbook.api.Password='geovindu'
    workbook.save()
    workbook.close()
app.quit();
print('ok!');

  

# geovindu 打开文件
#xlrd、xlwt、xlwings、win32com.client(pip install pypiwin32)

app=xw.App(visible=False,add_book=False);
folder_path=Path('C:\\Users\\geovindu\\Documents\\Visual Studio 2017\\Projects\\PythonTickt\\PythonTickt\\excel\\14.xlsx');
workbook=app.books.open(folder_path); #xlwb = xlApp.Workbooks.Open(filename, False, True, None, password)
worksheet=workbook.sheets;
list=[];
for i in worksheet:
    sheet_name=i.name;
    print(i.name);
    list.append(sheet_name);
print(list);
workbook.close();
app.quit();

  

#打开有密码的EXCEL文件 涂聚文 Geovin Du
# Anaconda 5.2.0 
# from win32com.client import Dispatch,DispatchEx,constants;
# import win32com.client; #(pip install pypiwin32)
dupath=Path('C:\\Users\\geovindu\\Documents\\Visual Studio 2017\\Projects\\PythonTickt\\PythonTickt\\excel\\20198HBDAY.xlsx');
xlApp = win32com.client.Dispatch("Excel.Application");
xlApp.Visible = False #文档打开,不显示打开
xlApp.DisplayAlerts = True
xlwb = xlApp.Workbooks.Open(dupath, False, True, None, password)
print("Success! Password is: "+password)
dusheet=xlwb.sheets;
dulist=[];
for i in dusheet:
    duname=i.name;
    print(i.name);
    dulist.append(duname);
print(dulist);
xlwb.Close(False); #涂聚文 Geovin Du 关闭
xlApp.Quit(); #退出

  

 

posted @ 2021-12-07 11:55  ®Geovin Du Dream Park™  阅读(151)  评论(0)    收藏  举报