일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 빅데이터
- Selenium
- OpenAPI
- Python
- 독학
- 카카오
- 구글캘린더
- 업무자동화
- 구글
- 파이썬게임
- kakao
- STT
- 간단한파이썬게임
- 파이썬게임만들기
- 자동화
- 웹크롤링
- 파이썬간단한게임
- 구글일정
- 오늘배워오늘쓰는
- 파이썬독학
- 음성인식
- Ai
- 기본기
- 파이썬
- 인공지능
- 크롤링
- 딥러닝
- Quickstart
- 머신러닝
- 소스코드
Archives
- Today
- Total
ai-creator
[Python-pptx] 부동산 지역 분석 보고서 만들기 (자동화) 본문
반응형
< 목표 >
부동산 지역분석 포스팅을 통해 저장된 그래프를 사용하여
파워포인트를 이용하여 보고서를 만들어보겠습니다. 물론, 프로그램이 자동으로 수행되게요~
<사전 준비 >
- 부동산 지역분석 내용을 step6) 까지 수행
** 아래 작성된 소스코드는 <사전준비>를 통해
graph 폴더에 png 파일 다운로드 및 법정동 코드로 sigu_list가 있는 상태로 동작하는 소스코드 입니다.
# Step1) 파워포인트 객체 선언
from pptx import Presentation # 라이브러리
from pptx.util import Inches # 사진, 표등을 그리기 위해
prs = Presentation() # 파워포인트 객체 선언
# Step2) 제목 layer
title_slide_layout = prs.slide_layouts[0] # 0 : 제목슬라이드에 해당
slide = prs.slides.add_slide(title_slide_layout) # 제목 슬라이드를 파워포인트 객체에 추가
# 제목 - 제목에 값넣기
title = slide.shapes.title # 제목
title.text = "지역별 아파트 분석" # 제목에 값 넣기
# 부제목
subtitle = slide.placeholders[1] # 제목상자는 placeholders[0], 부제목상자는 [1]
subtitle.text = "작성자 : 홍길동"
# Step3) 시/구 하드 코딩
제일 아래 코드에는 si/gu list로 수행합니다.
si="서울특별시"
gu = "광진구"
# Step4) 그래프 layer
Step4-1) 수공급 그래프
img_path = 'graph\\%s_%s_수공급.png' %(si, gu)
title_only_slide_layout = prs.slide_layouts[5]
slide = prs.slides.add_slide(title_only_slide_layout)
shapes = slide.shapes
shapes.title.text = '%s %s 수공급' %(si, gu)
left = Inches(0.5)
height = Inches(5)
width = Inches(9)
top = Inches(2)
# width, hegith가 없을 경우 원본 사이즈로
pic = slide.shapes.add_picture(img_path, left, top, width=width,height=height)
Step 4-2) 아파트 목록 그래프
img_path = 'graph\\%s_%s_대장아파트.png' %(si, gu)
title_only_slide_layout = prs.slide_layouts[5]
slide = prs.slides.add_slide(title_only_slide_layout)
shapes = slide.shapes
shapes.title.text = '%s %s 아파트 목록' %(si, gu)
left = Inches(0.5)
height = Inches(5)
width = Inches(9)
top = Inches(2)
# width, hegith가 없을 경우 원본 사이즈로
pic = slide.shapes.add_picture(img_path, left, top, width=width,height=height)
Step 4-3) 매매 전세 그래프
img_path = 'graph\\%s_%s_대장아파트매매전세.png' %(si, gu)
title_only_slide_layout = prs.slide_layouts[5]
slide = prs.slides.add_slide(title_only_slide_layout)
shapes = slide.shapes
shapes.title.text = '%s %s 대장아파트매매전세' %(si, gu)
left = Inches(0.5)
height = Inches(5)
width = Inches(9)
top = Inches(2)
# width, hegith가 없을 경우 원본 사이즈로
pic = slide.shapes.add_picture(img_path, left, top, width=width,height=height)
# Step5) 저장
prs.save('apt_report.pptx')
# 최종 완성본
## 객체 선언
from pptx import Presentation # 라이브러리
from pptx.util import Inches # 사진, 표등을 그리기 위해
prs = Presentation() # 파워포인트 객체 선언
## 제목슬라이드
title_slide_layout = prs.slide_layouts[0] # 0: 제목슬라이드
slide = prs.slides.add_slide(title_slide_layout)
#> 제목
title = slide.shapes.title
title.text = "지역별 아파트 분석"
#> 부제목
subtitle = slide.placeholders[1]
subtitle.text = "작성자 : 홍길동"
# 이미지 슬라이드 추가 (함수)
def add_imagelayer(img_pth, title_text):
img_path = img_pth
title_only_slide_layout = prs.slide_layouts[5]
slide = prs.slides.add_slide(title_only_slide_layout)
shapes = slide.shapes
shapes.title.text = title_text
left = Inches(0.5)
height = Inches(5)
width = Inches(9)
top = Inches(2)
# width, hegith가 없을 경우 원본 사이즈로
pic = slide.shapes.add_picture(img_path, left, top, width=width,height=height)
# 반복문으로 이미지 슬라이드 추가하기
for sigu in sigu_list[1:6]:
si = sigu.split(" ")[0]
gu = sigu.split(" ")[1]
print(si, gu)
add_imagelayer('graph\\%s_%s_수공급.png' %(si, gu), '%s %s 수공급' %(si, gu))
add_imagelayer('graph\\%s_%s_대장아파트.png' %(si, gu), '%s %s 아파트 목록' %(si, gu))
add_imagelayer('graph\\%s_%s_대장아파트매매전세.png' %(si, gu), '%s %s 대장아파트매매전세' %(si, gu))
# 저장
prs.save('apt_report.pptx')
정말 멋진 파워포인트가 뿅! 하고 나타났습니다.
오늘도 칼퇴하세요~ㅎㅎ
저작물의 저작권은 작성자에게 있습니다.
공유는 자유롭게 하시되 댓글 남겨주세요~
상업적 용도로는 무단 사용을 금지합니다.
끝까지 읽어주셔서 감사합니다^^
반응형
'오늘 배워 오늘 쓰는 OpenAPI > 프로젝트' 카테고리의 다른 글
[Python] 주식 분석 보고서 만들기 (자동화) (17) | 2020.06.13 |
---|---|
OpenAPI 활용 - 나만의 인공지능 비서 "자비스" 만들기 (음성제어기) (27) | 2020.05.28 |
[Python] Selenium 사용법 + 구글 검색 자동화 (11) | 2020.05.16 |
[Python] Selenium - 동적페이지 크롤링 (2) | 2020.05.16 |
네이버 속보 뉴스 요약 프로젝트 - 웹크롤링 + OpenAPI 활용 (22) | 2020.05.16 |
Comments