[코드공유] python - DRM issue

금나현·2022년 7월 26일
0

보안 문제가 걸려있는 경우, python을 이용해서 excel 파일을 불러오려고 할 때 encoding 문제가 일어나면서 데이터프레임으로 불러오는데 어려움이 있었다.

그래서 구글링을 해본 결과!
xlwings 를 이용하면 된다는 글을 보았고, xlwings를 이용하여 엑셀파일을 데이터 프레임으로 불러오는 코드를 정리해보고자 한다.

import xlwings as xw

app = xw.App(visible=False) # visible=False를 하지 않으면, 엑셀파일이 컴퓨터상에서 열리게 된다.
xb = xw.Book("파일 경로.파일명.확장자")
n = xb.sheets.count #sheet가 몇개인지 파악
#파일의 sheet가 여러개인 경우  
for t in range(1,n+1):
    df = xb.sheets(t).used_range.options(pd.DataFrame).value
    df.reset_index(inplace=True) #이건 해도 되고 안해도 됨
    #여기서부터는 파일을 잘게 잘라야해서 추가한 코드
    k = 45000  #행갯수
    dfs= [df.loc[i:i+k-1,:]for i in range(0, len(df), k)]
    for i, df_i in enumerate(dfs):
        fname = "새로 저장할 파일명 + str(t)  +"_" + str(i)+ ".csv"
        df_i.to_csv(fname, index=False)

도움이 되셨길 바라며...

-끝-

profile
AI researcher를 꿈꾸는 간호사입니다 :)

0개의 댓글