아래 포스팅에서 Perl 과 Autohotkey 를 사용한 Ms Word 자동화에 대해 소개한 적이 있는데요.
http://iamaman.tistory.com/335
http://iamaman.tistory.com/458
오늘은 요즘 제가 종종 사용하는 python 을 사용한 ms word 자동화에 대해 간단히 소개하려 합니다.
뭐 다른 사람에게 소개한다는 측면보다는 제가 기억하기 위한 용도로 적어 놓는거니 그리 자세하지는 않습니다.
일단 python 에서 ms word 문서를 만들기 위해서는 아래 주소에서 pywin32 모듈을 설치해야 합니다.
http://sourceforge.net/projects/pywin32/files/pywin32/
다음으로 아래 주소의 예제들을 참조하여~
http://www.blog.pythonlibrary.org/2010/07/16/python-and-microsoft-office-using-pywin32/
http://win32com.goermezer.de/content/view/173/192/
간단하게 python으로 코딩을 해보죠~
다음은 간단히 파일 저장하는 코드 입니다
import win32com.client
wordapp = win32com.client.Dispatch("Word.Application") # Create new Word Object
wordapp.Visible = 0 # Word Application should`t be visible
worddoc = wordapp.Documents.Add() # Create new Document Object
worddoc.PageSetup.Orientation = 1 # Make some Setup to the Document:
worddoc.PageSetup.LeftMargin = 20
worddoc.PageSetup.TopMargin = 20
worddoc.PageSetup.BottomMargin = 20
worddoc.PageSetup.RightMargin = 20
worddoc.Content.Font.Size = 11
worddoc.Content.Paragraphs.TabStops.Add (100)
worddoc.Content.Text = "Hello, I am a text!"
worddoc.Content.MoveEnd
worddoc.SaveAs("C:/test.docx")
worddoc.Close() # Close the Word Document (a save-Dialog pops up)
wordapp.Quit() # Close the Word Application
위 코드를 실행해 보면 C:\test.docx 에 다음과 같은 문서가 생성됨을 확인 할 수 있습니다.
아래는 MSDN 에 나와 있는 저장형식들 입니다.
http://msdn.microsoft.com/en-us/library/bb238158%28v=office.12%29.aspx
Openoffice automation 에 대한 글도 있어서 링크 합니다.
http://stackoverflow.com/questions/1035183/how-can-i-create-a-word-document-using-python
Ms Word 를 포함하여 다양한 예제가 나와 있는 주소
http://win32com.goermezer.de/content/category/7/86/192/
'programming language > Python' 카테고리의 다른 글
Python 실행 파일 만들기 cx_Freeze (0) | 2015.01.10 |
---|---|
Python GraphViz 모듈 (0) | 2014.12.28 |
윈도우용 Python 모듈 모음 (0) | 2014.12.27 |
Python C/C++ 주석 지우기 (0) | 2014.12.25 |
Python Cartesian Product (0) | 2014.12.05 |
Python Computer Algebra System(CAS) package sympy (0) | 2014.12.03 |
Python Pyzo, IEP (0) | 2014.12.03 |
Python 배열의 인덱스도 보기 enumerate (0) | 2014.11.30 |
댓글