Programming/Python
openpyxl.utils.exceptions.IllegalCharacterError 해결하기
remake
2023. 11. 27. 10:31
파이썬에서 Excel로 추출을 할때, to_excel 명령어 이후 아래와 같은 에러가 종종 발생하는데요. 특히 웹사이트를 크롤링하는 경우에는 종종 에러가 발생하기도 합니다.
illegalcharacterError
바로 지원하지 않는 문자열을 사용해서 엑셀 저장시 에러가 나는 경우입니다.
이 에러를 해결하기 위해서는 근본적으로 해당 문자열을 수정해야 하는데요.
참고한 블로그의 글입니다.
https://dorudoru.tistory.com/2329
File "C:\python\Lib\site-packages\openpyxl\cell\cell.py", line 165, in check_string raise IllegalCharacterError(f"{value} cannot be used in worksheets.") openpyxl.utils.exceptions.IllegalCharacterError: 게임 크리에이터와 팬들의 축제 ‘유튜브 크리에이터 타운: 게임페스타’, 12월 1일개최 cannot be used in worksheets. |
정확한 문구를 안다면 해당 문구를 아래의 sub을 통해서 수정해주시면 됩니다.
from openpyxl.cell.cell import ILLEGAL_CHARACTERS_RE
text1 = ILLEGAL_CHARACTERS_RE.sub(r'',text1)
그리고 정확한 문자열을 모른다면 다른 방법도 있는데요.
바로 엑셀을 저장하는 엔진을 변경하는 방법인데요. xlsxwriter를 패키지를 설치한 다음
engine에서 xlsxwriter를 설정해주시면 됩니다.
pip install xlsxwriter
df.to_excel('test.xlsx', engine='xlsxwriter')
이러한 방법으로 2개의 파일을 수정하면 에러를 해결할 수 있는데요.
사용하기 편한 방법으로 수정하여 사용하시면 됩니다.