openpyxl
-
용량이 큰 엑셀 자료를 텍스트로 변환하는 방법코딩 연습 2023. 2. 6. 20:20
여러 시트에 걸쳐 수백만 데이터가 있는 엑셀 자료를 특정 구분자를 주어 텍스트로 변환하는 파이썬 소스 코드임 대량 데이터 엑셀 자료를 구분자를 주고 텍스트로 변환하는 방법 여러 엑셀 시트에 아래와 같은 동일한 형식의 데이터가 수백만개 있고, 이 엑셀 데이터를 구분자를 주어서 하나의 텍스트 파일로 만들어야 할 경우가 있다. import openpyxl txt_filename = '부동산 주소데이터.txt' wb = openpyxl.load_workbook('./test/target_excel.xlsx', data_only=True) maxRow = 0 for shtname in wb.sheetnames: ws = wb[shtname] print(f'워크시트: {ws}, 총 행수: {ws.max_row}\n..
-
엑셀 파일 병합하기 - openpyxl 활용코딩 연습 2022. 6. 1. 11:07
[openpyxl을 활용한 엑셀 파일 병합] 파이썬 openpyxl과 파일 시스템 관련 함수를 이용하여 여러 엑셀 파일의 시트 내용을 하나의 엑셀 파일의 한 시트로 병합하는 코딩 연습을 해보았다. 파이썬 openpyxl 라이브러리를 활용한 엑셀 파일 병합 수십 수백 여개의 엑셀 파일을 병합하는 코드를 연습하다가 여러 폴더에 있는 엑셀 파일의 병합은 어떻게 하는지 궁금하여 코드를 짜보았다. (이런 형태로 엑셀 파일이 저장되는 곳도 있었음) 업무 자동화를 해야 하는 환경은 다음과 같다. 여러 폴더가 있고, 폴더 depth가 동일하나 폴더 이름이 틀리고, 폴더 내에 여러 형식의 파일들과 엑셀 파일이 하나 있을 때, 엑셀 파일만을 찾아서 시트 내용 전체를 가져오고, 해당 내용을 하나의 통합된 엑셀 파일에 그 내..
-
엑셀 파일 합치기 [파이썬 openpyxl, pandas DataFrame]코딩 연습 2022. 5. 11. 18:10
엑셀 파일 합치기 연습 - 엑셀 필드(컬럼) 항목이 같은 여러 개의 파일을 하나의 엑셀 파일로 합치는 작업을 파이썬으로 만들어봤다. 3가지 방법으로 테스트를 해보니 pandas DataFrame으로 만든 코드가 가장 빨랐다. 엑셀 필드 항목이 같은 여러 개의 파일을 하나의 파일로 만들기 아래에 3가지 파이썬 코드가 있다. 한 셀씩 추출하여 붙여넣기 한 row(행) 단위로 추출하여 붙여 넣기 판다스로 DataFrame(df) 만들고 여러 엑셀 파일의 데이터를 읽은 후 df를 다른 엑셀 파일에 저장하기 많은 row(행)를 가진 여러 엑셀 파일로 테스트를 해본 결과, 판다스로 구현한 코드가 가장 빨리 처리가 됐다. 1. 한 셀씩 추출하여 붙여 넣기 import pathlib import openpyxl def..
-
북마크 관리 프로그램 코딩, 엑셀 생성 관리 [파이썬기초(예제)]코딩 연습/파이썬 기초(예제) 2022. 4. 17. 12:06
파이썬으로 북마크(즐겨찾기) 관리 프로그램을 연습해봤다. 북마크 클래스를 만들어서 객체를 생성해 사용하는 방식으로 구현했으며, db 대신 엑셀 파일을 생성하여 입력한 북마크 내용을 저장할 수 있도록 했다. 본 프로그램을 장고(django) 웹 프레임워크 환경에 적용하고 엑셀 대신에 sqlite3나 mysql 등을 활용하면 북마크 웹 프로그램이 구현될 것임 [소스코드] # Bookmark 클래스 import os import openpyxl class Bookmark: def __init__(self): self.sitename = '' self.title = 0 self.url = '' self.bookmark_lst = '' # 입력값 리스트 def bookmark_set(self, sitename, ..
-
파이썬 openpyxl 활용 엑셀 시트 이름 가져오기코딩 연습/파이썬 기초(예제) 2022. 4. 13. 21:01
파이썬 openpyxl로 엑셀 파일에서 수 개의 워크시트 이름을 가져온 후 워크시트 내용을 출력하는 파이썬 코드를 작성해본다. python openpyxl 활용하여 엑셀 워크시트 내용 복사해보기 특정 폴더에 엑셀 파일(강릉시.xlsx) 있고, 다음과 같이 워크시트 2개에 내용이 있을 떄 엑셀 파일을 로딩 후 워크시트 이름과 컬럼 제목을 가져온다 import os import openpyxl from datetime import datetime directory = os.getcwd() + '\\excel\\' # 현재 디렉토리 + 작업 폴더 추가 print(directory) names = os.listdir(directory) # 파일 및 폴더 전체를 리스트 형태로 반환 print(names) prin..
-
openpyxl 엑셀 파일 확장자(.xls) 에러 해결하는 방법코딩 연습/코딩배우기 2022. 4. 10. 16:16
파이썬 openpyxl 모듈로 엑셀 파일 여러 개를 병합하려고 했으나 오류가 발생 - openpyxl does not support the old .xls file format, please use xlrd to read this file, or convert it to the more recent .xlsx file format. - 하였다. openpyxl .xls 파일 포맷 지원하지 않는 오류 해결하는 방법(.xlsx 파일 포맷으로 변환하는 방법) 오류 메시지 Traceback (most recent call last): File "d:\pythonDev\onch_excel_merge.py", line 28, in wb = load_workbook(f'{final_dir}\{file}', data_..
-
파이썬 pyshorteners 라이브러리로 단축 URL(단축 링크) 만들기코딩 연습/코딩배우기 2022. 2. 16. 19:35
유튜브 영상 주소(URL), 쿠팡 파트너스 등 제휴 마케팅 사이트의 긴 주소(URL)를 네이버 블로그, SNS, 이메일, 문자메시지 등에 삽입할 수 있도록 파이썬 pyshorteners 라이브러리 활용하여 단축 URL을 만드는 방법을 설명하려고 한다. 파이썬 라이브러리로 단축 URL 만들어보기 네이버 블로그, SNS 등에 쿠팡 파트너스 등의 제휴 마케팅 사이트 주소(광고 배너 링크나 키워드 링크 URL 등)를 넣으면 검색에서 불이익을 받는 경우가 있다고 하여 긴 URL을 짧게 만드는 단축 URL을 많이 사용한다. 그런데, 단축 URL을 사용할 때 주의해야 할 점이 있다. 한 번 사용하고 버릴 단축 URL이라면 상관없지만, 중요한 사이트이거나 계속해서 사용할 경우에는 이름이 있거나 오랜 기간 서비스를 하고..
-
juso.go.kr 도로명 주소, 엑셀로 분리하는 방법을 파이썬으로 해보기코딩 연습/코딩배우기 2022. 2. 9. 21:50
juso.go.kr의 도로명 주소를 보면, 형태가 4가지로 나오는데 '건물번호'까지만 있는 것과 괄호 안에 동명칭, 건물 명칭이 있는 것, 그리고 괄호 안에 동명칭만 있거나 동명칭은 없고 건물 명칭만 있는 것 등이다. 도로명 주소를 엑셀을 이용해 주소를 구분(분리)하는 방법도 있지만, 파이썬의 openpyxl 라이브러리 사용하여 빠르게 분리하는 방법도 있다. 파이썬으로 도로명 주소 분리해보기 먼저, 괄호 안에 동명칭이나 건물 명칭이 있는 것은 엑셀로 쉽게 분리할 수 있으니 그 부분은 분리했다고 하고, 건물번호까지 각각을 분리하는 방법을 코드로 구현해보았다. ☞ "강원도 속초시 미시령로3359번길 9(교동, 현대아파트)"에서 (교동, 현대아파트) 부분은 괄호 부분을 find() 함수로 찾아서 mid() 등..