CardNewsAutomation은 블로그 포스트 url을 입력으로 받아 카드뉴스 형태의 이미지를 자동으로 생성하는 Python 프로그램입니다.
블로그의 제목, 내용, 그리고 브랜딩 정보를 포함한 여러 장의 이미지 카드를 생성합니다.
입력한 url:
https://giftedmbti.tistory.com/167
출력된 이미지 (일부):
이미지 미리보기,저장 폴더 변경 및 열기를 지원하는 gui 실행파일(.exe)을 지원합니다.
이미지 규격은 1080×1080, jpg로 인스타 카드뉴스에 최적화되어있으며,config에서 변경가능합니다.
폰트의 크기는 html태그에 따라 달라집니다. 현재 티스토리만을 지원합니다.
구동방식:
- url을 입력받아 html을 크롤링
- Metadata로 TitleCard와 BrandingCard 생성
- h2태그로 내용을 구분하여 contentsCard 생성
- Python 3
- BeautifulSoup
- Requests
- Pillow
- Tkinter
- PyInstaller
- 설치방법
-
main_gui.zip을 다운로드하고, 압축해제합니다.
- 실행방법
- 다운로드한 exe파일을 실행합니다.
- 설치방법
- 이 GitHub 레포지토리를 클론합니다.
- 필요한 Python 라이브러리를 설치합니다.
pip install -r requirements.txt
- main.py를 실행합니다.
- 실행방법
config.py
파일에서 필요한 설정을 변경합니다. 예를 들어, 폰트 경로, 이미지 크기 등을 설정할 수 있습니다.main.py
파일을 실행합니다.python main.py
- 실행 시 블로그 URL을 입력으로 제공합니다.
main.py
: 프로그램의 실행점입니다. 카드뉴스 생성을 위한 여러 함수를 호출합니다.main_gui.py
: main.py의 함수들로 만든 gui입니다.BlogCrawler.py
: 블로그의 HTML을 크롤링합니다.TistoryCrawler.py
: 티스토리 블로그에 특화된 크롤링을 수행합니다.generateCardnews*.py
: 각각의 이미지 카드 (제목, 내용, 브랜딩)를 생성합니다.
config.py
파일에서 다양한 설정을 변경할 수 있습니다. 이 파일에는 다음과 같은 설정이 포함되어 있습니다:
- 폰트 경로
- 이미지 크기
- 배경색
- 텍스트 색상
이 프로그램은 MIT 라이센스 하에 배포됩니다.
- GitHub: https://github.com/larry1121
- 이메일: ghy200000@gmail.com